
register_color_library(:colorcet, ColorLibrary(Dict(:default => :sequential, :sequential => :fire, :diverging => :coolwarm)))

register_gradient_colors(:bgy, sample_evenly([
    RGB(0, 0.047803, 0.4883),
    RGB(0, 0.049756, 0.49556),
    RGB(0, 0.051605, 0.50281),
    RGB(0, 0.053545, 0.51004),
    RGB(0, 0.055585, 0.51721),
    RGB(0, 0.057566, 0.52435),
    RGB(0, 0.05978, 0.53144),
    RGB(0, 0.061812, 0.53849),
    RGB(0, 0.064016, 0.5455),
    RGB(0, 0.066232, 0.55245),
    RGB(0, 0.068551, 0.55934),
    RGB(0, 0.070824, 0.5662),
    RGB(0, 0.073229, 0.57299),
    RGB(0, 0.07557, 0.57971),
    RGB(0, 0.078003, 0.58638),
    RGB(0, 0.080554, 0.59299),
    RGB(0, 0.083114, 0.59951),
    RGB(0, 0.085697, 0.60596),
    RGB(0, 0.08842, 0.61236),
    RGB(0, 0.091168, 0.61866),
    RGB(0, 0.093925, 0.62487),
    RGB(0, 0.096707, 0.63101),
    RGB(0, 0.09963, 0.63705),
    RGB(0, 0.1026, 0.64298),
    RGB(0, 0.10561, 0.64881),
    RGB(0, 0.10866, 0.65454),
    RGB(0, 0.11183, 0.66016),
    RGB(0, 0.11497, 0.66567),
    RGB(0, 0.11829, 0.67103),
    RGB(0, 0.12156, 0.67626),
    RGB(0, 0.12498, 0.68134),
    RGB(0, 0.12846, 0.68629),
    RGB(0, 0.13201, 0.69107),
    RGB(0, 0.13559, 0.6957),
    RGB(0, 0.13927, 0.70014),
    RGB(0, 0.14307, 0.70439),
    RGB(0, 0.1469, 0.70845),
    RGB(0, 0.15085, 0.71227),
    RGB(0, 0.15487, 0.71588),
    RGB(0, 0.159, 0.71923),
    RGB(0, 0.16323, 0.7223),
    RGB(0, 0.16754, 0.7251),
    RGB(0, 0.17195, 0.72757),
    RGB(0, 0.17647, 0.72972),
    RGB(0, 0.18113, 0.73149),
    RGB(0, 0.18594, 0.73289),
    RGB(0, 0.19074, 0.73398),
    RGB(0, 0.19556, 0.73486),
    RGB(0, 0.20033, 0.73556),
    RGB(0, 0.20512, 0.73608),
    RGB(0, 0.20987, 0.73643),
    RGB(0, 0.21461, 0.73659),
    RGB(0, 0.21934, 0.73657),
    RGB(0, 0.22402, 0.73637),
    RGB(0, 0.22875, 0.73599),
    RGB(0, 0.2334, 0.73544),
    RGB(0, 0.23809, 0.73469),
    RGB(0, 0.24275, 0.73376),
    RGB(0, 0.24743, 0.73266),
    RGB(0, 0.25208, 0.73137),
    RGB(0, 0.25673, 0.72991),
    RGB(0, 0.26137, 0.72825),
    RGB(0, 0.26603, 0.72642),
    RGB(0, 0.27068, 0.72441),
    RGB(0, 0.27531, 0.72221),
    RGB(0, 0.27995, 0.71983),
    RGB(0, 0.28458, 0.71727),
    RGB(0, 0.28924, 0.71452),
    RGB(0, 0.29387, 0.71161),
    RGB(0, 0.29852, 0.70851),
    RGB(0, 0.30317, 0.70521),
    RGB(0, 0.30782, 0.70174),
    RGB(0, 0.31248, 0.69809),
    RGB(0, 0.31716, 0.69426),
    RGB(0, 0.32182, 0.69025),
    RGB(0, 0.32649, 0.68607),
    RGB(0, 0.33116, 0.68178),
    RGB(0, 0.33582, 0.67746),
    RGB(0, 0.34046, 0.6731),
    RGB(0, 0.34509, 0.66871),
    RGB(0, 0.3497, 0.66429),
    RGB(0, 0.3543, 0.65984),
    RGB(0, 0.35888, 0.65536),
    RGB(0, 0.36346, 0.65085),
    RGB(0, 0.36803, 0.6463),
    RGB(0, 0.37258, 0.64173),
    RGB(0, 0.37713, 0.63713),
    RGB(0, 0.38167, 0.6325),
    RGB(0, 0.38618, 0.62783),
    RGB(0, 0.39071, 0.62313),
    RGB(0, 0.39523, 0.6184),
    RGB(0, 0.39972, 0.61363),
    RGB(0, 0.40423, 0.60885),
    RGB(0, 0.40872, 0.60402),
    RGB(0, 0.41321, 0.59915),
    RGB(0, 0.41769, 0.59426),
    RGB(0, 0.42215, 0.58932),
    RGB(0, 0.42663, 0.58437),
    RGB(0, 0.4311, 0.57937),
    RGB(0, 0.43556, 0.57433),
    RGB(0, 0.44001, 0.56926),
    RGB(0, 0.44446, 0.56416),
    RGB(0, 0.44891, 0.55902),
    RGB(0, 0.45334, 0.55384),
    RGB(0, 0.45778, 0.54863),
    RGB(0, 0.46222, 0.54336),
    RGB(0, 0.46665, 0.53802),
    RGB(0, 0.47105, 0.53253),
    RGB(0, 0.47545, 0.52691),
    RGB(0, 0.47982, 0.52115),
    RGB(0, 0.48417, 0.51525),
    RGB(0, 0.48852, 0.50921),
    RGB(0, 0.49284, 0.50301),
    RGB(0, 0.49717, 0.49668),
    RGB(0, 0.50147, 0.49022),
    RGB(0, 0.50575, 0.48359),
    RGB(0, 0.51003, 0.47682),
    RGB(0, 0.51431, 0.4699),
    RGB(0, 0.51856, 0.4628),
    RGB(0.0097866, 0.52281, 0.45558),
    RGB(0.023896, 0.52704, 0.44818),
    RGB(0.038383, 0.53126, 0.44061),
    RGB(0.051763, 0.53547, 0.43289),
    RGB(0.063442, 0.53968, 0.42499),
    RGB(0.073828, 0.54388, 0.41692),
    RGB(0.083244, 0.54807, 0.40866),
    RGB(0.092062, 0.55225, 0.40022),
    RGB(0.10019, 0.55642, 0.39159),
    RGB(0.10786, 0.56059, 0.38276),
    RGB(0.11513, 0.56474, 0.37372),
    RGB(0.12206, 0.56889, 0.36445),
    RGB(0.12871, 0.57304, 0.35498),
    RGB(0.13507, 0.57718, 0.34524),
    RGB(0.14115, 0.58131, 0.33527),
    RGB(0.14697, 0.58544, 0.32499),
    RGB(0.15257, 0.58954, 0.31449),
    RGB(0.15773, 0.59367, 0.30393),
    RGB(0.16231, 0.59779, 0.29352),
    RGB(0.16631, 0.60191, 0.28332),
    RGB(0.16984, 0.60603, 0.27332),
    RGB(0.17292, 0.61015, 0.26352),
    RGB(0.17565, 0.61427, 0.25387),
    RGB(0.17811, 0.6184, 0.24439),
    RGB(0.18021, 0.62252, 0.23514),
    RGB(0.18207, 0.62664, 0.22606),
    RGB(0.18374, 0.63076, 0.21715),
    RGB(0.18522, 0.63487, 0.2084),
    RGB(0.18649, 0.63898, 0.19982),
    RGB(0.18765, 0.64309, 0.19148),
    RGB(0.18863, 0.6472, 0.18334),
    RGB(0.18951, 0.6513, 0.1754),
    RGB(0.19029, 0.65539, 0.16767),
    RGB(0.19099, 0.65948, 0.16013),
    RGB(0.19162, 0.66357, 0.15293),
    RGB(0.19219, 0.66765, 0.14604),
    RGB(0.19272, 0.67172, 0.13937),
    RGB(0.1932, 0.67579, 0.13311),
    RGB(0.19366, 0.67985, 0.1272),
    RGB(0.1941, 0.68391, 0.1218),
    RGB(0.19451, 0.68797, 0.11692),
    RGB(0.1949, 0.69202, 0.11259),
    RGB(0.19529, 0.69606, 0.10881),
    RGB(0.19569, 0.70009, 0.10581),
    RGB(0.19611, 0.70412, 0.10358),
    RGB(0.19653, 0.70814, 0.10209),
    RGB(0.19694, 0.71215, 0.10139),
    RGB(0.19736, 0.71617, 0.10116),
    RGB(0.19779, 0.72018, 0.10101),
    RGB(0.19823, 0.7242, 0.10087),
    RGB(0.19868, 0.72822, 0.10073),
    RGB(0.19914, 0.73225, 0.1006),
    RGB(0.19961, 0.73627, 0.10048),
    RGB(0.20009, 0.74031, 0.10036),
    RGB(0.20058, 0.74434, 0.10025),
    RGB(0.20108, 0.74838, 0.10015),
    RGB(0.20159, 0.75242, 0.10006),
    RGB(0.20211, 0.75647, 0.099977),
    RGB(0.20265, 0.76052, 0.099902),
    RGB(0.2032, 0.76457, 0.099835),
    RGB(0.20376, 0.76862, 0.099777),
    RGB(0.20433, 0.77267, 0.099729),
    RGB(0.20488, 0.77674, 0.099691),
    RGB(0.20546, 0.7808, 0.099663),
    RGB(0.20608, 0.78487, 0.099645),
    RGB(0.20669, 0.78894, 0.099637),
    RGB(0.20729, 0.79301, 0.099641),
    RGB(0.20791, 0.79708, 0.099656),
    RGB(0.20855, 0.80116, 0.099683),
    RGB(0.2092, 0.80523, 0.09972),
    RGB(0.20987, 0.80932, 0.09977),
    RGB(0.21055, 0.8134, 0.099833),
    RGB(0.21125, 0.81749, 0.099908),
    RGB(0.21196, 0.82159, 0.099996),
    RGB(0.21266, 0.82567, 0.1001),
    RGB(0.2134, 0.82977, 0.10021),
    RGB(0.21454, 0.83386, 0.10034),
    RGB(0.21746, 0.83784, 0.10049),
    RGB(0.22334, 0.84166, 0.10065),
    RGB(0.23182, 0.84531, 0.10083),
    RGB(0.24228, 0.84884, 0.10102),
    RGB(0.25428, 0.85224, 0.10123),
    RGB(0.26735, 0.85553, 0.10145),
    RGB(0.28125, 0.85872, 0.10168),
    RGB(0.29571, 0.86184, 0.10193),
    RGB(0.31067, 0.86485, 0.10219),
    RGB(0.32594, 0.86779, 0.10246),
    RGB(0.34137, 0.87065, 0.10275),
    RGB(0.35684, 0.87346, 0.10306),
    RGB(0.3724, 0.87619, 0.10337),
    RGB(0.38805, 0.87886, 0.10369),
    RGB(0.40366, 0.88147, 0.10401),
    RGB(0.41921, 0.88402, 0.10433),
    RGB(0.43478, 0.88651, 0.10468),
    RGB(0.45028, 0.88894, 0.10507),
    RGB(0.4657, 0.89133, 0.10549),
    RGB(0.48111, 0.89365, 0.10592),
    RGB(0.49641, 0.89593, 0.10637),
    RGB(0.51169, 0.89815, 0.10681),
    RGB(0.52691, 0.90032, 0.10725),
    RGB(0.54202, 0.90245, 0.1077),
    RGB(0.55713, 0.90452, 0.10817),
    RGB(0.57212, 0.90655, 0.10869),
    RGB(0.5871, 0.90852, 0.10927),
    RGB(0.60201, 0.91045, 0.10983),
    RGB(0.61689, 0.91232, 0.11037),
    RGB(0.63169, 0.91415, 0.11095),
    RGB(0.64646, 0.91593, 0.11155),
    RGB(0.66118, 0.91767, 0.11216),
    RGB(0.67585, 0.91934, 0.11281),
    RGB(0.69049, 0.92098, 0.11347),
    RGB(0.70508, 0.92257, 0.11409),
    RGB(0.71966, 0.92411, 0.11477),
    RGB(0.73418, 0.9256, 0.11552),
    RGB(0.74868, 0.92704, 0.11627),
    RGB(0.76314, 0.92844, 0.11699),
    RGB(0.77759, 0.92979, 0.11777),
    RGB(0.79201, 0.93109, 0.11859),
    RGB(0.8064, 0.93233, 0.11937),
    RGB(0.82077, 0.93353, 0.12019),
    RGB(0.83511, 0.93468, 0.12102),
    RGB(0.84946, 0.93578, 0.12189),
    RGB(0.86375, 0.93684, 0.12278),
    RGB(0.87808, 0.93783, 0.1237),
    RGB(0.89234, 0.93878, 0.12464),
    RGB(0.90664, 0.93968, 0.12562),
    RGB(0.92088, 0.94052, 0.12657),
    RGB(0.93514, 0.94131, 0.12755),
    RGB(0.94939, 0.94206, 0.12857),
    RGB(0.9636, 0.94275, 0.12961),
    RGB(0.97785, 0.94338, 0.13068),
    RGB(0.99205, 0.94397, 0.13172),
    RGB(1, 0.94449, 0.13281),
    RGB(1, 0.94497, 0.13392),
    RGB(1, 0.94539, 0.13505),
    RGB(1, 0.94574, 0.13614),
    RGB(1, 0.94606, 0.13735),
], 64), :colorcet)

register_gradient_colors(:bgyw, sample_evenly([
    RGB(0.10261, 0, 0.52493),
    RGB(0.10283, 0, 0.53197),
    RGB(0.10301, 0, 0.53902),
    RGB(0.10318, 0.0009426, 0.54604),
    RGB(0.10333, 0.0032938, 0.55302),
    RGB(0.10346, 0.0057773, 0.56),
    RGB(0.10358, 0.0084209, 0.56694),
    RGB(0.10367, 0.01129, 0.57386),
    RGB(0.10377, 0.014338, 0.58073),
    RGB(0.10383, 0.017402, 0.5876),
    RGB(0.1039, 0.020685, 0.59441),
    RGB(0.10395, 0.024094, 0.60121),
    RGB(0.10399, 0.027709, 0.60797),
    RGB(0.10402, 0.031481, 0.61469),
    RGB(0.10405, 0.035677, 0.62137),
    RGB(0.10407, 0.039812, 0.62802),
    RGB(0.10409, 0.043972, 0.63463),
    RGB(0.1041, 0.048145, 0.64118),
    RGB(0.10411, 0.052249, 0.64771),
    RGB(0.10412, 0.056438, 0.65417),
    RGB(0.10412, 0.060474, 0.66061),
    RGB(0.10414, 0.064518, 0.66698),
    RGB(0.10414, 0.068586, 0.67332),
    RGB(0.10416, 0.072559, 0.67957),
    RGB(0.10417, 0.076535, 0.68581),
    RGB(0.1042, 0.080591, 0.69196),
    RGB(0.10423, 0.084636, 0.69806),
    RGB(0.10427, 0.088643, 0.7041),
    RGB(0.10432, 0.092635, 0.71007),
    RGB(0.10438, 0.096648, 0.71599),
    RGB(0.10445, 0.10074, 0.72181),
    RGB(0.10454, 0.10477, 0.72759),
    RGB(0.10466, 0.1089, 0.73327),
    RGB(0.10478, 0.11303, 0.73891),
    RGB(0.10495, 0.11711, 0.74441),
    RGB(0.10512, 0.12123, 0.74987),
    RGB(0.10534, 0.12546, 0.75522),
    RGB(0.10558, 0.12966, 0.76048),
    RGB(0.10584, 0.13388, 0.76566),
    RGB(0.10615, 0.13816, 0.77071),
    RGB(0.10646, 0.14242, 0.77569),
    RGB(0.10681, 0.14674, 0.78053),
    RGB(0.10717, 0.15111, 0.78527),
    RGB(0.10755, 0.15551, 0.7899),
    RGB(0.10798, 0.15993, 0.79438),
    RGB(0.10845, 0.16445, 0.79875),
    RGB(0.10901, 0.16898, 0.80298),
    RGB(0.10961, 0.17353, 0.80705),
    RGB(0.1102, 0.17818, 0.81099),
    RGB(0.11082, 0.1828, 0.81477),
    RGB(0.1115, 0.18758, 0.81836),
    RGB(0.11222, 0.19233, 0.82179),
    RGB(0.11298, 0.19716, 0.82505),
    RGB(0.11375, 0.20204, 0.82808),
    RGB(0.11454, 0.20704, 0.83091),
    RGB(0.11544, 0.21207, 0.83352),
    RGB(0.11636, 0.21715, 0.83593),
    RGB(0.11726, 0.22231, 0.83805),
    RGB(0.11827, 0.22758, 0.83989),
    RGB(0.11923, 0.23291, 0.84144),
    RGB(0.12022, 0.23833, 0.84271),
    RGB(0.12122, 0.24384, 0.84364),
    RGB(0.12223, 0.24946, 0.84423),
    RGB(0.12325, 0.2552, 0.84442),
    RGB(0.12427, 0.26103, 0.84418),
    RGB(0.12527, 0.26698, 0.84347),
    RGB(0.12622, 0.2731, 0.84224),
    RGB(0.12705, 0.27937, 0.84043),
    RGB(0.12787, 0.28578, 0.83797),
    RGB(0.12853, 0.2924, 0.83479),
    RGB(0.129, 0.29923, 0.8308),
    RGB(0.12928, 0.30627, 0.82589),
    RGB(0.12926, 0.31358, 0.81986),
    RGB(0.12882, 0.3212, 0.8125),
    RGB(0.12785, 0.32922, 0.80355),
    RGB(0.12621, 0.33765, 0.79274),
    RGB(0.1245, 0.34613, 0.78084),
    RGB(0.12367, 0.35431, 0.76889),
    RGB(0.12366, 0.36214, 0.75705),
    RGB(0.12444, 0.36966, 0.74532),
    RGB(0.12594, 0.37693, 0.7337),
    RGB(0.12792, 0.38394, 0.72217),
    RGB(0.13044, 0.39074, 0.71074),
    RGB(0.13327, 0.39733, 0.69939),
    RGB(0.13642, 0.40376, 0.68814),
    RGB(0.13984, 0.41001, 0.67697),
    RGB(0.14348, 0.41611, 0.66586),
    RGB(0.14722, 0.42207, 0.65483),
    RGB(0.15108, 0.42792, 0.64387),
    RGB(0.15499, 0.43363, 0.63298),
    RGB(0.15896, 0.43925, 0.62214),
    RGB(0.16291, 0.44478, 0.61137),
    RGB(0.16687, 0.4502, 0.60064),
    RGB(0.17081, 0.45554, 0.58996),
    RGB(0.17471, 0.4608, 0.57934),
    RGB(0.17858, 0.46599, 0.56874),
    RGB(0.18239, 0.47111, 0.55819),
    RGB(0.18617, 0.47617, 0.54768),
    RGB(0.18985, 0.48116, 0.53721),
    RGB(0.19353, 0.4861, 0.52675),
    RGB(0.19713, 0.491, 0.51631),
    RGB(0.20061, 0.49582, 0.50589),
    RGB(0.20411, 0.50061, 0.4955),
    RGB(0.20751, 0.50535, 0.48511),
    RGB(0.21087, 0.51006, 0.47474),
    RGB(0.21416, 0.51473, 0.46436),
    RGB(0.21738, 0.51936, 0.45396),
    RGB(0.22058, 0.52395, 0.44356),
    RGB(0.2237, 0.52851, 0.43315),
    RGB(0.22681, 0.53303, 0.42271),
    RGB(0.22982, 0.53753, 0.41226),
    RGB(0.23283, 0.54198, 0.40175),
    RGB(0.23581, 0.54643, 0.39121),
    RGB(0.23872, 0.55083, 0.38071),
    RGB(0.24169, 0.55518, 0.37044),
    RGB(0.24469, 0.55949, 0.3605),
    RGB(0.24781, 0.56374, 0.35089),
    RGB(0.25097, 0.56793, 0.34154),
    RGB(0.25425, 0.57208, 0.33247),
    RGB(0.25761, 0.5762, 0.32363),
    RGB(0.26111, 0.58025, 0.31505),
    RGB(0.26472, 0.58427, 0.3067),
    RGB(0.26848, 0.58825, 0.29856),
    RGB(0.27234, 0.5922, 0.29062),
    RGB(0.27639, 0.5961, 0.28291),
    RGB(0.28053, 0.59996, 0.27535),
    RGB(0.28484, 0.6038, 0.26796),
    RGB(0.28931, 0.60759, 0.26077),
    RGB(0.29388, 0.61135, 0.25373),
    RGB(0.29862, 0.61508, 0.24682),
    RGB(0.3035, 0.61878, 0.24008),
    RGB(0.30855, 0.62243, 0.23349),
    RGB(0.31372, 0.62607, 0.22707),
    RGB(0.31901, 0.62967, 0.22077),
    RGB(0.32444, 0.63324, 0.21455),
    RGB(0.33002, 0.63679, 0.20847),
    RGB(0.3357, 0.6403, 0.20249),
    RGB(0.3415, 0.64378, 0.19666),
    RGB(0.34744, 0.64724, 0.1909),
    RGB(0.35349, 0.65066, 0.18533),
    RGB(0.35968, 0.65406, 0.17981),
    RGB(0.36597, 0.65744, 0.17443),
    RGB(0.37234, 0.66078, 0.16914),
    RGB(0.37883, 0.6641, 0.16394),
    RGB(0.38543, 0.6674, 0.15885),
    RGB(0.39215, 0.67066, 0.15389),
    RGB(0.39895, 0.6739, 0.14907),
    RGB(0.40585, 0.67712, 0.14434),
    RGB(0.41283, 0.6803, 0.13966),
    RGB(0.41989, 0.68346, 0.13522),
    RGB(0.42707, 0.6866, 0.1309),
    RGB(0.43431, 0.68971, 0.12666),
    RGB(0.44163, 0.6928, 0.12254),
    RGB(0.44902, 0.69586, 0.11865),
    RGB(0.45651, 0.69888, 0.11488),
    RGB(0.46408, 0.70188, 0.11136),
    RGB(0.4717, 0.70487, 0.1079),
    RGB(0.47938, 0.70783, 0.10464),
    RGB(0.48716, 0.71076, 0.10172),
    RGB(0.495, 0.71367, 0.098964),
    RGB(0.50288, 0.71655, 0.096355),
    RGB(0.51084, 0.71941, 0.094134),
    RGB(0.51888, 0.72223, 0.092156),
    RGB(0.52696, 0.72504, 0.090393),
    RGB(0.53508, 0.72782, 0.088892),
    RGB(0.54329, 0.73057, 0.087819),
    RGB(0.55155, 0.73329, 0.087005),
    RGB(0.55985, 0.73599, 0.086399),
    RGB(0.56821, 0.73867, 0.08621),
    RGB(0.57664, 0.74131, 0.086387),
    RGB(0.5851, 0.74394, 0.086866),
    RGB(0.59361, 0.74654, 0.087651),
    RGB(0.60218, 0.74911, 0.088758),
    RGB(0.61075, 0.75167, 0.090091),
    RGB(0.6193, 0.75421, 0.091662),
    RGB(0.62776, 0.75676, 0.093291),
    RGB(0.63618, 0.7593, 0.095179),
    RGB(0.64452, 0.76186, 0.097055),
    RGB(0.65279, 0.76442, 0.0992),
    RGB(0.66101, 0.76698, 0.10144),
    RGB(0.66917, 0.76954, 0.10382),
    RGB(0.67726, 0.77211, 0.10635),
    RGB(0.68528, 0.77468, 0.10898),
    RGB(0.69324, 0.77727, 0.11176),
    RGB(0.70115, 0.77985, 0.1146),
    RGB(0.70899, 0.78245, 0.11768),
    RGB(0.71675, 0.78505, 0.12084),
    RGB(0.72446, 0.78766, 0.12415),
    RGB(0.73211, 0.79027, 0.12759),
    RGB(0.73969, 0.7929, 0.13116),
    RGB(0.74719, 0.79554, 0.13488),
    RGB(0.75463, 0.79819, 0.13869),
    RGB(0.762, 0.80085, 0.14265),
    RGB(0.76931, 0.80352, 0.1467),
    RGB(0.77655, 0.80621, 0.15091),
    RGB(0.78371, 0.80891, 0.15527),
    RGB(0.79078, 0.81163, 0.15974),
    RGB(0.79778, 0.81436, 0.1644),
    RGB(0.80471, 0.81711, 0.16917),
    RGB(0.81155, 0.81987, 0.17404),
    RGB(0.8183, 0.82266, 0.17908),
    RGB(0.82496, 0.82547, 0.18425),
    RGB(0.83154, 0.8283, 0.18958),
    RGB(0.83802, 0.83116, 0.19506),
    RGB(0.84439, 0.83404, 0.20068),
    RGB(0.85066, 0.83694, 0.20653),
    RGB(0.85681, 0.83988, 0.21248),
    RGB(0.86285, 0.84285, 0.21864),
    RGB(0.86877, 0.84585, 0.22495),
    RGB(0.87454, 0.84889, 0.23152),
    RGB(0.88018, 0.85196, 0.23823),
    RGB(0.88567, 0.85508, 0.24516),
    RGB(0.89101, 0.85823, 0.25235),
    RGB(0.89617, 0.86144, 0.25975),
    RGB(0.90116, 0.86469, 0.26737),
    RGB(0.90596, 0.868, 0.27529),
    RGB(0.91052, 0.87137, 0.2835),
    RGB(0.91485, 0.87481, 0.29203),
    RGB(0.91894, 0.87831, 0.30086),
    RGB(0.92276, 0.88189, 0.31007),
    RGB(0.92625, 0.88556, 0.3197),
    RGB(0.92941, 0.88931, 0.32973),
    RGB(0.93217, 0.89317, 0.34027),
    RGB(0.93451, 0.89714, 0.3513),
    RGB(0.93634, 0.90125, 0.36298),
    RGB(0.93763, 0.9055, 0.37534),
    RGB(0.9387, 0.90978, 0.38837),
    RGB(0.93989, 0.91399, 0.40197),
    RGB(0.94123, 0.91811, 0.41613),
    RGB(0.94272, 0.92216, 0.43083),
    RGB(0.94436, 0.92612, 0.44608),
    RGB(0.94613, 0.93, 0.46186),
    RGB(0.94803, 0.9338, 0.47813),
    RGB(0.95005, 0.93753, 0.49497),
    RGB(0.95218, 0.94117, 0.5123),
    RGB(0.95441, 0.94474, 0.53014),
    RGB(0.95674, 0.94822, 0.54852),
    RGB(0.95915, 0.95163, 0.56741),
    RGB(0.96162, 0.95496, 0.58679),
    RGB(0.96415, 0.95822, 0.60671),
    RGB(0.96673, 0.96139, 0.62717),
    RGB(0.96934, 0.96449, 0.64813),
    RGB(0.97196, 0.96752, 0.66962),
    RGB(0.97459, 0.97046, 0.69168),
    RGB(0.97722, 0.97333, 0.71425),
    RGB(0.9798, 0.97613, 0.73736),
    RGB(0.98235, 0.97885, 0.76105),
    RGB(0.98483, 0.98151, 0.78529),
    RGB(0.98722, 0.98408, 0.81007),
    RGB(0.98952, 0.98658, 0.83544),
    RGB(0.99169, 0.98901, 0.8614),
    RGB(0.99371, 0.99136, 0.88792),
    RGB(0.99556, 0.99365, 0.91503),
    RGB(0.99723, 0.99585, 0.94278),
    RGB(0.99867, 0.99799, 0.97109),
    RGB(0.99986, 1, 1),
], 64), :colorcet)

register_gradient_colors(:bjy, sample_evenly([
    RGB(0.077854, 0.19343, 0.75827),
    RGB(0.095213, 0.19629, 0.7569),
    RGB(0.11007, 0.1991, 0.75553),
    RGB(0.12317, 0.20194, 0.75416),
    RGB(0.13514, 0.20481, 0.75279),
    RGB(0.14608, 0.20765, 0.75143),
    RGB(0.15626, 0.21049, 0.75004),
    RGB(0.16572, 0.21333, 0.74867),
    RGB(0.17472, 0.21621, 0.7473),
    RGB(0.18318, 0.21905, 0.74592),
    RGB(0.19126, 0.22188, 0.74454),
    RGB(0.19897, 0.22472, 0.74317),
    RGB(0.20641, 0.2276, 0.74178),
    RGB(0.21348, 0.23044, 0.7404),
    RGB(0.22035, 0.23329, 0.73902),
    RGB(0.22695, 0.23617, 0.73763),
    RGB(0.23332, 0.23902, 0.73624),
    RGB(0.23953, 0.24188, 0.73486),
    RGB(0.24552, 0.24472, 0.73347),
    RGB(0.25139, 0.24761, 0.73208),
    RGB(0.25706, 0.25045, 0.73069),
    RGB(0.26259, 0.25333, 0.72929),
    RGB(0.26797, 0.25618, 0.7279),
    RGB(0.27326, 0.25907, 0.7265),
    RGB(0.2784, 0.26192, 0.72511),
    RGB(0.28343, 0.26478, 0.7237),
    RGB(0.28834, 0.26764, 0.7223),
    RGB(0.29316, 0.27055, 0.7209),
    RGB(0.29788, 0.27341, 0.7195),
    RGB(0.3025, 0.27629, 0.71809),
    RGB(0.30706, 0.27916, 0.71668),
    RGB(0.31151, 0.28204, 0.71527),
    RGB(0.3159, 0.2849, 0.71386),
    RGB(0.3202, 0.28778, 0.71244),
    RGB(0.32441, 0.29066, 0.71103),
    RGB(0.32858, 0.29354, 0.70962),
    RGB(0.33268, 0.29643, 0.7082),
    RGB(0.33669, 0.29932, 0.70678),
    RGB(0.34065, 0.30219, 0.70535),
    RGB(0.34455, 0.30509, 0.70393),
    RGB(0.34839, 0.30797, 0.7025),
    RGB(0.35217, 0.31088, 0.70108),
    RGB(0.35592, 0.31377, 0.69964),
    RGB(0.35959, 0.31666, 0.69821),
    RGB(0.36322, 0.31955, 0.69678),
    RGB(0.36681, 0.32245, 0.69535),
    RGB(0.37033, 0.32533, 0.6939),
    RGB(0.37383, 0.32824, 0.69247),
    RGB(0.37727, 0.33113, 0.69102),
    RGB(0.38067, 0.33405, 0.68958),
    RGB(0.38403, 0.33695, 0.68814),
    RGB(0.38734, 0.33986, 0.68669),
    RGB(0.39062, 0.34277, 0.68524),
    RGB(0.39386, 0.34566, 0.68378),
    RGB(0.39705, 0.34858, 0.68232),
    RGB(0.40023, 0.35149, 0.68086),
    RGB(0.40336, 0.35441, 0.67941),
    RGB(0.40645, 0.35733, 0.67795),
    RGB(0.40951, 0.36023, 0.67649),
    RGB(0.41254, 0.36315, 0.67502),
    RGB(0.41553, 0.36607, 0.67355),
    RGB(0.41848, 0.36899, 0.67208),
    RGB(0.42141, 0.3719, 0.67061),
    RGB(0.42432, 0.37484, 0.66913),
    RGB(0.4272, 0.37776, 0.66765),
    RGB(0.43004, 0.38069, 0.66616),
    RGB(0.43285, 0.38362, 0.66468),
    RGB(0.43564, 0.38654, 0.6632),
    RGB(0.4384, 0.38948, 0.66171),
    RGB(0.44113, 0.39241, 0.66021),
    RGB(0.44384, 0.39535, 0.65871),
    RGB(0.44652, 0.39829, 0.65722),
    RGB(0.44918, 0.40123, 0.65572),
    RGB(0.45181, 0.40416, 0.65421),
    RGB(0.45442, 0.4071, 0.6527),
    RGB(0.45699, 0.41005, 0.6512),
    RGB(0.45955, 0.413, 0.64969),
    RGB(0.46209, 0.41594, 0.64817),
    RGB(0.46461, 0.41888, 0.64665),
    RGB(0.4671, 0.42183, 0.64513),
    RGB(0.46957, 0.42479, 0.6436),
    RGB(0.47202, 0.42775, 0.64208),
    RGB(0.47444, 0.4307, 0.64055),
    RGB(0.47685, 0.43364, 0.63902),
    RGB(0.47923, 0.43661, 0.63748),
    RGB(0.4816, 0.43957, 0.63594),
    RGB(0.48394, 0.44254, 0.6344),
    RGB(0.48627, 0.44549, 0.63285),
    RGB(0.48858, 0.44846, 0.6313),
    RGB(0.49088, 0.45143, 0.62974),
    RGB(0.49313, 0.4544, 0.62819),
    RGB(0.49539, 0.45736, 0.62663),
    RGB(0.49763, 0.46033, 0.62506),
    RGB(0.49983, 0.4633, 0.6235),
    RGB(0.50204, 0.46628, 0.62192),
    RGB(0.50422, 0.46927, 0.62036),
    RGB(0.50637, 0.47224, 0.61878),
    RGB(0.50853, 0.47522, 0.61719),
    RGB(0.51065, 0.47819, 0.6156),
    RGB(0.51277, 0.48117, 0.61401),
    RGB(0.51487, 0.48416, 0.61242),
    RGB(0.51695, 0.48715, 0.61083),
    RGB(0.51901, 0.49014, 0.60923),
    RGB(0.52106, 0.49312, 0.60762),
    RGB(0.52309, 0.49611, 0.606),
    RGB(0.52511, 0.49911, 0.6044),
    RGB(0.52712, 0.50211, 0.60277),
    RGB(0.52911, 0.5051, 0.60115),
    RGB(0.53107, 0.50811, 0.59953),
    RGB(0.53303, 0.5111, 0.59789),
    RGB(0.53497, 0.51411, 0.59626),
    RGB(0.53691, 0.51711, 0.59462),
    RGB(0.53882, 0.5201, 0.59298),
    RGB(0.54072, 0.52312, 0.59133),
    RGB(0.54261, 0.52613, 0.58967),
    RGB(0.54448, 0.52914, 0.58801),
    RGB(0.54635, 0.53215, 0.58635),
    RGB(0.54819, 0.53516, 0.58469),
    RGB(0.55002, 0.53818, 0.58301),
    RGB(0.55184, 0.54119, 0.58133),
    RGB(0.55364, 0.54421, 0.57966),
    RGB(0.55543, 0.54723, 0.57796),
    RGB(0.55722, 0.55025, 0.57628),
    RGB(0.55898, 0.55327, 0.57457),
    RGB(0.56074, 0.55629, 0.57288),
    RGB(0.56249, 0.55933, 0.57116),
    RGB(0.56422, 0.56236, 0.56945),
    RGB(0.56593, 0.56538, 0.56773),
    RGB(0.56883, 0.56809, 0.5657),
    RGB(0.57292, 0.57047, 0.56336),
    RGB(0.57698, 0.57287, 0.56099),
    RGB(0.58101, 0.57525, 0.55863),
    RGB(0.58503, 0.57764, 0.55626),
    RGB(0.58901, 0.58005, 0.55389),
    RGB(0.59299, 0.58244, 0.55151),
    RGB(0.59693, 0.58486, 0.54913),
    RGB(0.60085, 0.58726, 0.54673),
    RGB(0.60476, 0.58967, 0.54433),
    RGB(0.60865, 0.5921, 0.54191),
    RGB(0.6125, 0.59451, 0.5395),
    RGB(0.61635, 0.59694, 0.53708),
    RGB(0.62018, 0.59936, 0.53465),
    RGB(0.62399, 0.60179, 0.53221),
    RGB(0.62777, 0.60423, 0.52976),
    RGB(0.63154, 0.60666, 0.52731),
    RGB(0.6353, 0.6091, 0.52484),
    RGB(0.63904, 0.61154, 0.52237),
    RGB(0.64276, 0.61398, 0.51989),
    RGB(0.64646, 0.61644, 0.51741),
    RGB(0.65015, 0.61889, 0.51491),
    RGB(0.65382, 0.62134, 0.5124),
    RGB(0.65749, 0.62381, 0.50989),
    RGB(0.66112, 0.62626, 0.50736),
    RGB(0.66475, 0.62873, 0.50483),
    RGB(0.66837, 0.6312, 0.50229),
    RGB(0.67197, 0.63367, 0.49973),
    RGB(0.67556, 0.63615, 0.49717),
    RGB(0.67913, 0.63862, 0.4946),
    RGB(0.68269, 0.6411, 0.49202),
    RGB(0.68624, 0.64358, 0.48942),
    RGB(0.68978, 0.64607, 0.48682),
    RGB(0.6933, 0.64856, 0.4842),
    RGB(0.69681, 0.65106, 0.48158),
    RGB(0.70031, 0.65355, 0.47894),
    RGB(0.7038, 0.65605, 0.47629),
    RGB(0.70727, 0.65855, 0.47362),
    RGB(0.71074, 0.66105, 0.47096),
    RGB(0.71419, 0.66357, 0.46826),
    RGB(0.71764, 0.66607, 0.46556),
    RGB(0.72106, 0.66859, 0.46285),
    RGB(0.72449, 0.6711, 0.46013),
    RGB(0.7279, 0.67362, 0.45739),
    RGB(0.7313, 0.67614, 0.45465),
    RGB(0.73469, 0.67866, 0.45188),
    RGB(0.73807, 0.68119, 0.4491),
    RGB(0.74144, 0.68372, 0.4463),
    RGB(0.74481, 0.68625, 0.44349),
    RGB(0.74816, 0.68879, 0.44066),
    RGB(0.75151, 0.69132, 0.43783),
    RGB(0.75485, 0.69386, 0.43497),
    RGB(0.75817, 0.69641, 0.4321),
    RGB(0.76149, 0.69895, 0.42919),
    RGB(0.7648, 0.7015, 0.42628),
    RGB(0.7681, 0.70405, 0.42335),
    RGB(0.7714, 0.70661, 0.42041),
    RGB(0.77468, 0.70917, 0.41745),
    RGB(0.77796, 0.71173, 0.41446),
    RGB(0.78123, 0.71428, 0.41146),
    RGB(0.7845, 0.71685, 0.40844),
    RGB(0.78775, 0.71942, 0.4054),
    RGB(0.79099, 0.72198, 0.40232),
    RGB(0.79424, 0.72456, 0.39924),
    RGB(0.79747, 0.72713, 0.39614),
    RGB(0.8007, 0.72971, 0.393),
    RGB(0.80392, 0.73229, 0.38984),
    RGB(0.80713, 0.73487, 0.38666),
    RGB(0.81033, 0.73745, 0.38347),
    RGB(0.81354, 0.74005, 0.38023),
    RGB(0.81673, 0.74263, 0.37698),
    RGB(0.81992, 0.74522, 0.37369),
    RGB(0.8231, 0.74782, 0.37037),
    RGB(0.82628, 0.75041, 0.36704),
    RGB(0.82945, 0.75301, 0.36366),
    RGB(0.83261, 0.75561, 0.36026),
    RGB(0.83577, 0.75822, 0.35684),
    RGB(0.83892, 0.76082, 0.35336),
    RGB(0.84207, 0.76343, 0.34987),
    RGB(0.84521, 0.76604, 0.34632),
    RGB(0.84834, 0.76865, 0.34277),
    RGB(0.85147, 0.77127, 0.33916),
    RGB(0.8546, 0.77388, 0.33551),
    RGB(0.85772, 0.77651, 0.33181),
    RGB(0.86083, 0.77913, 0.32808),
    RGB(0.86395, 0.78175, 0.3243),
    RGB(0.86705, 0.78438, 0.3205),
    RGB(0.87015, 0.78701, 0.31662),
    RGB(0.87324, 0.78964, 0.31269),
    RGB(0.87633, 0.79227, 0.30875),
    RGB(0.87942, 0.79491, 0.30472),
    RGB(0.8825, 0.79754, 0.30064),
    RGB(0.88558, 0.80019, 0.29651),
    RGB(0.88866, 0.80283, 0.29232),
    RGB(0.89172, 0.80547, 0.28806),
    RGB(0.89479, 0.80812, 0.28374),
    RGB(0.89785, 0.81077, 0.27936),
    RGB(0.9009, 0.81342, 0.27488),
    RGB(0.90395, 0.81607, 0.27036),
    RGB(0.907, 0.81872, 0.26572),
    RGB(0.91005, 0.82138, 0.26101),
    RGB(0.91309, 0.82404, 0.2562),
    RGB(0.91612, 0.82671, 0.25133),
    RGB(0.91915, 0.82937, 0.24631),
    RGB(0.92219, 0.83204, 0.24121),
    RGB(0.92521, 0.8347, 0.236),
    RGB(0.92823, 0.83737, 0.23064),
    RGB(0.93125, 0.84005, 0.22515),
    RGB(0.93426, 0.84272, 0.21954),
    RGB(0.93728, 0.84539, 0.21376),
    RGB(0.94029, 0.84807, 0.20781),
    RGB(0.94329, 0.85075, 0.20166),
    RGB(0.94629, 0.85343, 0.19535),
    RGB(0.94929, 0.85612, 0.18881),
    RGB(0.95229, 0.8588, 0.18199),
    RGB(0.95528, 0.86149, 0.17496),
    RGB(0.95827, 0.86419, 0.16758),
    RGB(0.96125, 0.86687, 0.15984),
    RGB(0.96424, 0.86957, 0.15175),
    RGB(0.96722, 0.87227, 0.1432),
    RGB(0.9702, 0.87497, 0.13412),
    RGB(0.97317, 0.87767, 0.12434),
    RGB(0.97614, 0.88037, 0.11385),
    RGB(0.97911, 0.88307, 0.10233),
    RGB(0.98208, 0.88578, 0.089538),
    RGB(0.98505, 0.88849, 0.07491),
    RGB(0.98801, 0.8912, 0.057534),
    RGB(0.99097, 0.89391, 0.035647),
], 64), :colorcet)

register_gradient_colors(:bkr, sample_evenly([
    RGB(0.097481, 0.50736, 0.98205),
    RGB(0.1033, 0.50389, 0.97428),
    RGB(0.10863, 0.50041, 0.96653),
    RGB(0.11369, 0.49694, 0.9588),
    RGB(0.11841, 0.49348, 0.95107),
    RGB(0.12275, 0.49002, 0.94336),
    RGB(0.12692, 0.48657, 0.93566),
    RGB(0.13089, 0.48312, 0.92796),
    RGB(0.1346, 0.47968, 0.92028),
    RGB(0.13811, 0.47624, 0.91262),
    RGB(0.14143, 0.4728, 0.90497),
    RGB(0.14458, 0.46938, 0.89732),
    RGB(0.14758, 0.46594, 0.88969),
    RGB(0.15043, 0.46252, 0.88207),
    RGB(0.15312, 0.45912, 0.87446),
    RGB(0.15574, 0.4557, 0.86687),
    RGB(0.1582, 0.4523, 0.85929),
    RGB(0.16051, 0.4489, 0.85172),
    RGB(0.16277, 0.44549, 0.84416),
    RGB(0.16488, 0.44211, 0.83662),
    RGB(0.16693, 0.43871, 0.82909),
    RGB(0.16886, 0.43534, 0.82157),
    RGB(0.17068, 0.43197, 0.81406),
    RGB(0.17242, 0.42859, 0.80657),
    RGB(0.17409, 0.42522, 0.79909),
    RGB(0.17566, 0.42185, 0.79162),
    RGB(0.17718, 0.41849, 0.78417),
    RGB(0.17862, 0.41515, 0.77672),
    RGB(0.17995, 0.4118, 0.76929),
    RGB(0.18122, 0.40846, 0.76187),
    RGB(0.18243, 0.40512, 0.75448),
    RGB(0.18359, 0.40179, 0.74709),
    RGB(0.18468, 0.39847, 0.73972),
    RGB(0.18572, 0.39515, 0.73235),
    RGB(0.18665, 0.39183, 0.725),
    RGB(0.18758, 0.38852, 0.71767),
    RGB(0.18841, 0.38521, 0.71034),
    RGB(0.18918, 0.38191, 0.70304),
    RGB(0.1899, 0.37862, 0.69574),
    RGB(0.19058, 0.37533, 0.68847),
    RGB(0.1912, 0.37204, 0.68119),
    RGB(0.19177, 0.36878, 0.67395),
    RGB(0.1923, 0.3655, 0.6667),
    RGB(0.19277, 0.36224, 0.65948),
    RGB(0.1932, 0.35896, 0.65228),
    RGB(0.19358, 0.35572, 0.64508),
    RGB(0.19393, 0.35246, 0.6379),
    RGB(0.19422, 0.34922, 0.63074),
    RGB(0.19446, 0.34597, 0.62359),
    RGB(0.19466, 0.34276, 0.61645),
    RGB(0.19481, 0.33953, 0.60933),
    RGB(0.19492, 0.33629, 0.60222),
    RGB(0.19499, 0.33309, 0.59513),
    RGB(0.19502, 0.32988, 0.58805),
    RGB(0.19502, 0.32665, 0.58099),
    RGB(0.19497, 0.32346, 0.57394),
    RGB(0.19489, 0.32028, 0.56692),
    RGB(0.19477, 0.31708, 0.55991),
    RGB(0.19462, 0.31391, 0.5529),
    RGB(0.19442, 0.31074, 0.54593),
    RGB(0.19419, 0.30755, 0.53895),
    RGB(0.19391, 0.30439, 0.532),
    RGB(0.1936, 0.30123, 0.52507),
    RGB(0.19325, 0.29808, 0.51815),
    RGB(0.19288, 0.29493, 0.51124),
    RGB(0.19247, 0.29181, 0.50436),
    RGB(0.19202, 0.28867, 0.49749),
    RGB(0.19154, 0.28553, 0.49064),
    RGB(0.19103, 0.28244, 0.48379),
    RGB(0.19049, 0.27932, 0.47697),
    RGB(0.18992, 0.27622, 0.47017),
    RGB(0.18932, 0.27311, 0.46338),
    RGB(0.18869, 0.27002, 0.45661),
    RGB(0.18804, 0.26691, 0.44986),
    RGB(0.18733, 0.26385, 0.44313),
    RGB(0.18658, 0.26076, 0.43641),
    RGB(0.18585, 0.25769, 0.42971),
    RGB(0.18505, 0.25465, 0.42302),
    RGB(0.18421, 0.25159, 0.41637),
    RGB(0.18335, 0.24855, 0.40972),
    RGB(0.18247, 0.24548, 0.40309),
    RGB(0.18156, 0.24245, 0.39648),
    RGB(0.18062, 0.23944, 0.38989),
    RGB(0.17967, 0.23642, 0.38333),
    RGB(0.17869, 0.23338, 0.37678),
    RGB(0.17768, 0.23038, 0.37023),
    RGB(0.17659, 0.2274, 0.36372),
    RGB(0.17551, 0.22438, 0.35724),
    RGB(0.17442, 0.22142, 0.35076),
    RGB(0.17327, 0.21845, 0.34429),
    RGB(0.17211, 0.21547, 0.33785),
    RGB(0.17093, 0.21251, 0.33143),
    RGB(0.16973, 0.20955, 0.32503),
    RGB(0.16847, 0.20663, 0.31867),
    RGB(0.16721, 0.20368, 0.3123),
    RGB(0.16588, 0.20071, 0.30599),
    RGB(0.16458, 0.1978, 0.29967),
    RGB(0.16324, 0.1949, 0.29336),
    RGB(0.16187, 0.19198, 0.28708),
    RGB(0.16042, 0.18908, 0.28083),
    RGB(0.15902, 0.1862, 0.27461),
    RGB(0.15755, 0.18329, 0.26841),
    RGB(0.1561, 0.18041, 0.26222),
    RGB(0.15456, 0.17758, 0.25605),
    RGB(0.15302, 0.17471, 0.2499),
    RGB(0.15147, 0.17184, 0.24379),
    RGB(0.14991, 0.16902, 0.23772),
    RGB(0.14827, 0.16616, 0.23164),
    RGB(0.14665, 0.16336, 0.22559),
    RGB(0.14505, 0.16051, 0.21957),
    RGB(0.14339, 0.15773, 0.21357),
    RGB(0.14175, 0.15496, 0.20763),
    RGB(0.14009, 0.1522, 0.20171),
    RGB(0.13851, 0.14952, 0.19588),
    RGB(0.13692, 0.1468, 0.19008),
    RGB(0.13541, 0.14419, 0.18437),
    RGB(0.134, 0.14163, 0.17876),
    RGB(0.13268, 0.1391, 0.17324),
    RGB(0.1315, 0.1367, 0.16787),
    RGB(0.13053, 0.13444, 0.16268),
    RGB(0.12973, 0.13226, 0.15764),
    RGB(0.12916, 0.13028, 0.15284),
    RGB(0.12891, 0.12842, 0.1483),
    RGB(0.12899, 0.12676, 0.14407),
    RGB(0.12945, 0.12536, 0.14011),
    RGB(0.13031, 0.12415, 0.13652),
    RGB(0.13151, 0.12321, 0.13332),
    RGB(0.13315, 0.12253, 0.13051),
    RGB(0.13523, 0.12211, 0.12804),
    RGB(0.13775, 0.12196, 0.126),
    RGB(0.14065, 0.12206, 0.12429),
    RGB(0.14394, 0.12241, 0.12299),
    RGB(0.14762, 0.12299, 0.12205),
    RGB(0.15161, 0.12379, 0.12145),
    RGB(0.15595, 0.12478, 0.12115),
    RGB(0.1605, 0.12596, 0.12111),
    RGB(0.16531, 0.1272, 0.12131),
    RGB(0.17036, 0.12863, 0.12171),
    RGB(0.17553, 0.13018, 0.12228),
    RGB(0.18085, 0.13174, 0.12299),
    RGB(0.1863, 0.13339, 0.12382),
    RGB(0.1918, 0.1351, 0.12474),
    RGB(0.19738, 0.13681, 0.12575),
    RGB(0.20301, 0.13858, 0.12675),
    RGB(0.20867, 0.14035, 0.12784),
    RGB(0.21437, 0.14214, 0.12891),
    RGB(0.2201, 0.14394, 0.13008),
    RGB(0.22584, 0.14575, 0.13119),
    RGB(0.23158, 0.14753, 0.13232),
    RGB(0.23735, 0.14933, 0.13347),
    RGB(0.24308, 0.15109, 0.13464),
    RGB(0.24887, 0.15287, 0.13574),
    RGB(0.25465, 0.15465, 0.13692),
    RGB(0.26041, 0.15645, 0.1381),
    RGB(0.26621, 0.15821, 0.1392),
    RGB(0.27198, 0.15993, 0.14038),
    RGB(0.27781, 0.16174, 0.14154),
    RGB(0.28361, 0.16349, 0.14269),
    RGB(0.28944, 0.16518, 0.14384),
    RGB(0.29526, 0.16697, 0.14501),
    RGB(0.30109, 0.16869, 0.14614),
    RGB(0.30695, 0.17041, 0.1473),
    RGB(0.3128, 0.17212, 0.14842),
    RGB(0.31867, 0.17385, 0.14962),
    RGB(0.32454, 0.17555, 0.15074),
    RGB(0.33043, 0.17728, 0.15189),
    RGB(0.33632, 0.17898, 0.15304),
    RGB(0.34224, 0.18066, 0.1542),
    RGB(0.34815, 0.18235, 0.15536),
    RGB(0.35407, 0.18405, 0.15654),
    RGB(0.36001, 0.18576, 0.15766),
    RGB(0.36596, 0.18743, 0.15884),
    RGB(0.3719, 0.18909, 0.15995),
    RGB(0.37787, 0.19075, 0.16115),
    RGB(0.38385, 0.19241, 0.16231),
    RGB(0.38983, 0.1941, 0.16346),
    RGB(0.39584, 0.19573, 0.1646),
    RGB(0.40184, 0.19738, 0.16573),
    RGB(0.40786, 0.19901, 0.16693),
    RGB(0.41389, 0.20064, 0.16806),
    RGB(0.41994, 0.20228, 0.16925),
    RGB(0.42598, 0.20394, 0.17038),
    RGB(0.43206, 0.20555, 0.17153),
    RGB(0.43813, 0.20718, 0.17269),
    RGB(0.44421, 0.20879, 0.17385),
    RGB(0.4503, 0.2104, 0.17502),
    RGB(0.4564, 0.21202, 0.17614),
    RGB(0.46251, 0.21361, 0.17734),
    RGB(0.46864, 0.2152, 0.1785),
    RGB(0.47479, 0.21681, 0.17964),
    RGB(0.48092, 0.21839, 0.18078),
    RGB(0.48709, 0.21998, 0.18194),
    RGB(0.49325, 0.22155, 0.1831),
    RGB(0.49943, 0.22314, 0.18427),
    RGB(0.50562, 0.22468, 0.18546),
    RGB(0.51182, 0.22628, 0.18659),
    RGB(0.51804, 0.22784, 0.18779),
    RGB(0.52426, 0.22938, 0.18892),
    RGB(0.53049, 0.23094, 0.19008),
    RGB(0.53674, 0.23249, 0.19123),
    RGB(0.54299, 0.23403, 0.1924),
    RGB(0.54925, 0.23559, 0.19357),
    RGB(0.55552, 0.23713, 0.19474),
    RGB(0.56181, 0.23863, 0.19589),
    RGB(0.5681, 0.24016, 0.19706),
    RGB(0.57441, 0.2417, 0.1982),
    RGB(0.58073, 0.2432, 0.19936),
    RGB(0.58705, 0.24472, 0.20052),
    RGB(0.59339, 0.24623, 0.20169),
    RGB(0.59974, 0.24776, 0.20286),
    RGB(0.60609, 0.24925, 0.20405),
    RGB(0.61246, 0.25075, 0.20519),
    RGB(0.61885, 0.25225, 0.20639),
    RGB(0.62523, 0.25374, 0.20753),
    RGB(0.63163, 0.25524, 0.20869),
    RGB(0.63803, 0.25671, 0.20986),
    RGB(0.64445, 0.25817, 0.21103),
    RGB(0.65088, 0.25967, 0.21221),
    RGB(0.65732, 0.26113, 0.21335),
    RGB(0.66377, 0.2626, 0.21453),
    RGB(0.67023, 0.26407, 0.21571),
    RGB(0.6767, 0.26552, 0.21688),
    RGB(0.68317, 0.26696, 0.21804),
    RGB(0.68966, 0.26842, 0.21921),
    RGB(0.69616, 0.26988, 0.22039),
    RGB(0.70267, 0.27131, 0.22154),
    RGB(0.70919, 0.27274, 0.22272),
    RGB(0.71571, 0.27418, 0.22387),
    RGB(0.72224, 0.27563, 0.22504),
    RGB(0.72879, 0.27705, 0.22624),
    RGB(0.73535, 0.27847, 0.2274),
    RGB(0.74191, 0.27988, 0.22858),
    RGB(0.74849, 0.28129, 0.22972),
    RGB(0.75508, 0.28272, 0.23091),
    RGB(0.76167, 0.28411, 0.23209),
    RGB(0.76827, 0.28551, 0.23324),
    RGB(0.77488, 0.28691, 0.23444),
    RGB(0.78151, 0.28831, 0.23561),
    RGB(0.78814, 0.28971, 0.23679),
    RGB(0.79478, 0.2911, 0.23795),
    RGB(0.80143, 0.29248, 0.23912),
    RGB(0.80809, 0.29385, 0.24028),
    RGB(0.81476, 0.29523, 0.24148),
    RGB(0.82144, 0.29662, 0.24264),
    RGB(0.82812, 0.29797, 0.24381),
    RGB(0.83482, 0.29935, 0.24499),
    RGB(0.84153, 0.3007, 0.24617),
    RGB(0.84824, 0.30205, 0.24736),
    RGB(0.85497, 0.30341, 0.24855),
    RGB(0.8617, 0.30477, 0.2497),
    RGB(0.86845, 0.30613, 0.25089),
    RGB(0.8752, 0.30745, 0.25208),
    RGB(0.88196, 0.30881, 0.25325),
    RGB(0.88873, 0.31015, 0.25444),
    RGB(0.8955, 0.31147, 0.25561),
    RGB(0.90229, 0.31279, 0.25679),
], 64), :colorcet)

register_gradient_colors(:bky, sample_evenly([
    RGB(0.056674, 0.57959, 0.98121),
    RGB(0.066107, 0.57547, 0.97345),
    RGB(0.074463, 0.57135, 0.9657),
    RGB(0.081994, 0.56724, 0.95796),
    RGB(0.088742, 0.56314, 0.95024),
    RGB(0.09499, 0.55904, 0.94252),
    RGB(0.10067, 0.55495, 0.93482),
    RGB(0.10603, 0.55086, 0.92713),
    RGB(0.11098, 0.54678, 0.91945),
    RGB(0.1156, 0.54271, 0.91178),
    RGB(0.11993, 0.53864, 0.90413),
    RGB(0.12401, 0.53457, 0.89649),
    RGB(0.1279, 0.53052, 0.88886),
    RGB(0.13155, 0.52647, 0.88124),
    RGB(0.135, 0.52241, 0.87363),
    RGB(0.13827, 0.51838, 0.86604),
    RGB(0.14137, 0.51435, 0.85845),
    RGB(0.1443, 0.51031, 0.85088),
    RGB(0.14707, 0.50628, 0.84333),
    RGB(0.14975, 0.50227, 0.83578),
    RGB(0.15224, 0.49827, 0.82825),
    RGB(0.15465, 0.49426, 0.82073),
    RGB(0.15694, 0.49026, 0.81323),
    RGB(0.15911, 0.48626, 0.80573),
    RGB(0.1612, 0.48228, 0.79826),
    RGB(0.16316, 0.4783, 0.79079),
    RGB(0.16499, 0.47433, 0.78334),
    RGB(0.1668, 0.47036, 0.77589),
    RGB(0.16848, 0.46639, 0.76846),
    RGB(0.17009, 0.46243, 0.76105),
    RGB(0.1716, 0.45849, 0.75365),
    RGB(0.17304, 0.45455, 0.74626),
    RGB(0.17442, 0.45061, 0.73889),
    RGB(0.17569, 0.44668, 0.73153),
    RGB(0.17693, 0.44275, 0.72418),
    RGB(0.17811, 0.43883, 0.71685),
    RGB(0.17917, 0.43493, 0.70953),
    RGB(0.18019, 0.43102, 0.70222),
    RGB(0.18114, 0.42712, 0.69493),
    RGB(0.18204, 0.42322, 0.68765),
    RGB(0.18288, 0.41934, 0.68038),
    RGB(0.18367, 0.41546, 0.67314),
    RGB(0.1844, 0.41158, 0.6659),
    RGB(0.18509, 0.40772, 0.65868),
    RGB(0.18571, 0.40387, 0.65148),
    RGB(0.18626, 0.40001, 0.64428),
    RGB(0.18676, 0.39617, 0.6371),
    RGB(0.18724, 0.39232, 0.62994),
    RGB(0.18767, 0.3885, 0.62279),
    RGB(0.18804, 0.38466, 0.61565),
    RGB(0.18835, 0.38086, 0.60854),
    RGB(0.18861, 0.37705, 0.60143),
    RGB(0.18884, 0.37323, 0.59434),
    RGB(0.18902, 0.36944, 0.58727),
    RGB(0.18916, 0.36565, 0.58021),
    RGB(0.18925, 0.36187, 0.57317),
    RGB(0.18931, 0.3581, 0.56614),
    RGB(0.18932, 0.35433, 0.55913),
    RGB(0.18929, 0.35058, 0.55214),
    RGB(0.18923, 0.34682, 0.54515),
    RGB(0.18912, 0.34307, 0.53819),
    RGB(0.18898, 0.33934, 0.53124),
    RGB(0.1888, 0.3356, 0.52431),
    RGB(0.18859, 0.33187, 0.51739),
    RGB(0.18833, 0.32815, 0.51049),
    RGB(0.18805, 0.32444, 0.5036),
    RGB(0.18772, 0.32075, 0.49673),
    RGB(0.18734, 0.31705, 0.48988),
    RGB(0.18692, 0.31337, 0.48305),
    RGB(0.18649, 0.3097, 0.47624),
    RGB(0.18603, 0.30603, 0.46945),
    RGB(0.18554, 0.30234, 0.46265),
    RGB(0.18499, 0.2987, 0.45589),
    RGB(0.1844, 0.29505, 0.44915),
    RGB(0.18379, 0.29142, 0.44242),
    RGB(0.18315, 0.28778, 0.43571),
    RGB(0.18248, 0.28416, 0.429),
    RGB(0.18178, 0.28053, 0.42232),
    RGB(0.18105, 0.27695, 0.41567),
    RGB(0.18029, 0.27335, 0.40903),
    RGB(0.1795, 0.26977, 0.4024),
    RGB(0.1787, 0.26618, 0.39581),
    RGB(0.17786, 0.26261, 0.38922),
    RGB(0.17694, 0.25905, 0.38265),
    RGB(0.176, 0.25549, 0.37611),
    RGB(0.17509, 0.25195, 0.36958),
    RGB(0.17411, 0.24842, 0.36307),
    RGB(0.1731, 0.24486, 0.35659),
    RGB(0.17207, 0.24136, 0.35012),
    RGB(0.17101, 0.23785, 0.34366),
    RGB(0.16994, 0.23435, 0.33724),
    RGB(0.16882, 0.23085, 0.33082),
    RGB(0.16766, 0.22737, 0.32443),
    RGB(0.16649, 0.22389, 0.31807),
    RGB(0.16526, 0.22045, 0.31171),
    RGB(0.16408, 0.21698, 0.3054),
    RGB(0.16281, 0.21352, 0.29909),
    RGB(0.16154, 0.21009, 0.2928),
    RGB(0.16017, 0.20669, 0.28653),
    RGB(0.15887, 0.20325, 0.28029),
    RGB(0.15748, 0.19982, 0.27408),
    RGB(0.15612, 0.19646, 0.26786),
    RGB(0.15467, 0.19306, 0.26171),
    RGB(0.15321, 0.18968, 0.25556),
    RGB(0.15174, 0.18632, 0.24942),
    RGB(0.15026, 0.18294, 0.2433),
    RGB(0.14871, 0.17961, 0.23725),
    RGB(0.14718, 0.17625, 0.23118),
    RGB(0.14564, 0.17295, 0.22512),
    RGB(0.14403, 0.16968, 0.21913),
    RGB(0.14243, 0.16638, 0.21314),
    RGB(0.14084, 0.16314, 0.20723),
    RGB(0.13919, 0.15988, 0.2013),
    RGB(0.13765, 0.15674, 0.19547),
    RGB(0.13602, 0.15358, 0.18968),
    RGB(0.13455, 0.15054, 0.18396),
    RGB(0.13306, 0.14756, 0.17836),
    RGB(0.13167, 0.14469, 0.1728),
    RGB(0.13042, 0.14192, 0.16741),
    RGB(0.12922, 0.13927, 0.16217),
    RGB(0.12825, 0.13686, 0.15706),
    RGB(0.12743, 0.13466, 0.15217),
    RGB(0.12685, 0.13265, 0.14756),
    RGB(0.12655, 0.13093, 0.14317),
    RGB(0.12652, 0.12946, 0.13905),
    RGB(0.12678, 0.12834, 0.1353),
    RGB(0.12737, 0.12752, 0.13186),
    RGB(0.12833, 0.12704, 0.12874),
    RGB(0.12961, 0.12694, 0.12604),
    RGB(0.13123, 0.12718, 0.12362),
    RGB(0.13318, 0.1278, 0.12159),
    RGB(0.13545, 0.1287, 0.11992),
    RGB(0.13807, 0.12997, 0.11861),
    RGB(0.14093, 0.13147, 0.11751),
    RGB(0.14404, 0.13325, 0.11674),
    RGB(0.14739, 0.13526, 0.11622),
    RGB(0.15092, 0.1375, 0.11588),
    RGB(0.15463, 0.13984, 0.11572),
    RGB(0.15851, 0.14242, 0.11571),
    RGB(0.16247, 0.14511, 0.11584),
    RGB(0.16652, 0.14785, 0.11606),
    RGB(0.17065, 0.15069, 0.11635),
    RGB(0.17485, 0.15359, 0.11668),
    RGB(0.17908, 0.15658, 0.11705),
    RGB(0.18333, 0.15955, 0.11747),
    RGB(0.18766, 0.16261, 0.11793),
    RGB(0.19194, 0.16563, 0.11839),
    RGB(0.19628, 0.16874, 0.11884),
    RGB(0.20058, 0.17182, 0.11927),
    RGB(0.20495, 0.17495, 0.11971),
    RGB(0.2093, 0.17808, 0.12015),
    RGB(0.21365, 0.18116, 0.12058),
    RGB(0.21802, 0.18431, 0.12101),
    RGB(0.22237, 0.18748, 0.12142),
    RGB(0.22675, 0.19061, 0.12183),
    RGB(0.23112, 0.19379, 0.12224),
    RGB(0.23551, 0.19696, 0.12264),
    RGB(0.23987, 0.20011, 0.12303),
    RGB(0.24425, 0.20332, 0.12341),
    RGB(0.24867, 0.20654, 0.12378),
    RGB(0.25306, 0.20972, 0.12415),
    RGB(0.25746, 0.21292, 0.12451),
    RGB(0.26188, 0.21617, 0.12486),
    RGB(0.2663, 0.21939, 0.12521),
    RGB(0.27074, 0.22263, 0.12555),
    RGB(0.27516, 0.22588, 0.12587),
    RGB(0.2796, 0.22912, 0.12618),
    RGB(0.28403, 0.23239, 0.12646),
    RGB(0.28849, 0.23566, 0.12673),
    RGB(0.29294, 0.23892, 0.12701),
    RGB(0.29741, 0.24221, 0.12728),
    RGB(0.30187, 0.24549, 0.12756),
    RGB(0.30637, 0.24881, 0.12782),
    RGB(0.31086, 0.25212, 0.12807),
    RGB(0.31534, 0.25543, 0.1283),
    RGB(0.31985, 0.25875, 0.12852),
    RGB(0.32434, 0.26208, 0.12872),
    RGB(0.32887, 0.26541, 0.12892),
    RGB(0.33339, 0.26877, 0.12911),
    RGB(0.3379, 0.27209, 0.12931),
    RGB(0.34245, 0.27548, 0.12949),
    RGB(0.34699, 0.27884, 0.12967),
    RGB(0.35153, 0.28221, 0.12983),
    RGB(0.35609, 0.28557, 0.12998),
    RGB(0.36064, 0.28897, 0.13012),
    RGB(0.36522, 0.29236, 0.13024),
    RGB(0.36979, 0.29575, 0.13035),
    RGB(0.37439, 0.29917, 0.13045),
    RGB(0.37897, 0.30257, 0.13053),
    RGB(0.38358, 0.30601, 0.13061),
    RGB(0.38818, 0.30944, 0.13067),
    RGB(0.39279, 0.31285, 0.13073),
    RGB(0.39741, 0.31631, 0.13077),
    RGB(0.40203, 0.31975, 0.1308),
    RGB(0.40668, 0.3232, 0.13082),
    RGB(0.41131, 0.32665, 0.13083),
    RGB(0.41596, 0.33013, 0.13082),
    RGB(0.42062, 0.3336, 0.13081),
    RGB(0.42529, 0.33708, 0.13078),
    RGB(0.42996, 0.34056, 0.13075),
    RGB(0.43464, 0.34404, 0.1307),
    RGB(0.43932, 0.34756, 0.13063),
    RGB(0.44402, 0.35106, 0.13056),
    RGB(0.44872, 0.35457, 0.13047),
    RGB(0.45341, 0.35808, 0.13037),
    RGB(0.45813, 0.3616, 0.13025),
    RGB(0.46284, 0.36513, 0.13012),
    RGB(0.46758, 0.36867, 0.12998),
    RGB(0.47231, 0.3722, 0.12981),
    RGB(0.47705, 0.37575, 0.12963),
    RGB(0.4818, 0.3793, 0.12943),
    RGB(0.48655, 0.38286, 0.12922),
    RGB(0.49133, 0.38642, 0.129),
    RGB(0.49608, 0.38999, 0.12877),
    RGB(0.50086, 0.39357, 0.12854),
    RGB(0.50564, 0.39715, 0.1283),
    RGB(0.51043, 0.40075, 0.12803),
    RGB(0.51523, 0.40433, 0.12773),
    RGB(0.52003, 0.40793, 0.1274),
    RGB(0.52484, 0.41154, 0.12707),
    RGB(0.52966, 0.41515, 0.12674),
    RGB(0.53448, 0.41876, 0.12641),
    RGB(0.53931, 0.42238, 0.12606),
    RGB(0.54415, 0.42601, 0.12567),
    RGB(0.549, 0.42965, 0.12524),
    RGB(0.55385, 0.43328, 0.12481),
    RGB(0.5587, 0.43694, 0.12436),
    RGB(0.56357, 0.44058, 0.1239),
    RGB(0.56844, 0.44424, 0.12341),
    RGB(0.57332, 0.44789, 0.12291),
    RGB(0.5782, 0.45157, 0.1224),
    RGB(0.58309, 0.45524, 0.12186),
    RGB(0.58798, 0.45892, 0.12131),
    RGB(0.5929, 0.46259, 0.12074),
    RGB(0.5978, 0.46628, 0.12015),
    RGB(0.60272, 0.46998, 0.11954),
    RGB(0.60765, 0.47367, 0.11893),
    RGB(0.61257, 0.47738, 0.11828),
    RGB(0.61751, 0.48108, 0.11755),
    RGB(0.62245, 0.48479, 0.11685),
    RGB(0.6274, 0.48852, 0.11615),
    RGB(0.63236, 0.49224, 0.11536),
    RGB(0.63732, 0.49596, 0.11454),
    RGB(0.64229, 0.4997, 0.11378),
    RGB(0.64726, 0.50344, 0.11298),
    RGB(0.65224, 0.50719, 0.1121),
    RGB(0.65724, 0.51093, 0.11121),
    RGB(0.66223, 0.5147, 0.11031),
    RGB(0.66723, 0.51846, 0.10936),
    RGB(0.67223, 0.52221, 0.10832),
    RGB(0.67725, 0.52599, 0.10736),
    RGB(0.68226, 0.52976, 0.10634),
    RGB(0.68729, 0.53353, 0.10521),
    RGB(0.69232, 0.53733, 0.10412),
    RGB(0.69735, 0.54111, 0.103),
    RGB(0.7024, 0.54491, 0.1018),
], 64), :colorcet)

register_gradient_colors(:blues, sample_evenly([
    RGB(0.94334, 0.94353, 0.94348),
    RGB(0.94036, 0.94166, 0.94325),
    RGB(0.93738, 0.9398, 0.94302),
    RGB(0.93439, 0.93793, 0.94278),
    RGB(0.93141, 0.93607, 0.94255),
    RGB(0.92843, 0.9342, 0.94231),
    RGB(0.92545, 0.93234, 0.94206),
    RGB(0.92247, 0.93048, 0.94182),
    RGB(0.91948, 0.92862, 0.94157),
    RGB(0.9165, 0.92676, 0.94131),
    RGB(0.91352, 0.9249, 0.94106),
    RGB(0.91054, 0.92304, 0.9408),
    RGB(0.90755, 0.92118, 0.94054),
    RGB(0.90456, 0.91932, 0.94028),
    RGB(0.90157, 0.91747, 0.94001),
    RGB(0.89858, 0.91561, 0.93974),
    RGB(0.8956, 0.91376, 0.93947),
    RGB(0.89261, 0.9119, 0.93919),
    RGB(0.88962, 0.91005, 0.93891),
    RGB(0.88663, 0.9082, 0.93863),
    RGB(0.88364, 0.90635, 0.93834),
    RGB(0.88065, 0.90449, 0.93805),
    RGB(0.87766, 0.90264, 0.93776),
    RGB(0.87466, 0.90079, 0.93746),
    RGB(0.87167, 0.89894, 0.93716),
    RGB(0.86868, 0.8971, 0.93686),
    RGB(0.86569, 0.89525, 0.93655),
    RGB(0.8627, 0.89339, 0.93624),
    RGB(0.8597, 0.89155, 0.93593),
    RGB(0.8567, 0.8897, 0.93561),
    RGB(0.8537, 0.88785, 0.93528),
    RGB(0.85071, 0.88601, 0.93496),
    RGB(0.84771, 0.88417, 0.93463),
    RGB(0.84472, 0.88232, 0.9343),
    RGB(0.84172, 0.88048, 0.93396),
    RGB(0.83872, 0.87864, 0.93362),
    RGB(0.83572, 0.87679, 0.93327),
    RGB(0.83272, 0.87495, 0.93292),
    RGB(0.82973, 0.87311, 0.93257),
    RGB(0.82673, 0.87127, 0.93222),
    RGB(0.82373, 0.86943, 0.93186),
    RGB(0.82073, 0.86759, 0.93149),
    RGB(0.81773, 0.86575, 0.93112),
    RGB(0.81473, 0.86392, 0.93075),
    RGB(0.81173, 0.86208, 0.93037),
    RGB(0.80873, 0.86025, 0.92999),
    RGB(0.80573, 0.85841, 0.9296),
    RGB(0.80273, 0.85657, 0.92921),
    RGB(0.79973, 0.85474, 0.92881),
    RGB(0.79673, 0.85291, 0.92841),
    RGB(0.79374, 0.85107, 0.928),
    RGB(0.79073, 0.84924, 0.92759),
    RGB(0.78773, 0.8474, 0.92717),
    RGB(0.78474, 0.84557, 0.92675),
    RGB(0.78174, 0.84374, 0.92633),
    RGB(0.77873, 0.84191, 0.9259),
    RGB(0.77573, 0.84009, 0.92546),
    RGB(0.77274, 0.83825, 0.92502),
    RGB(0.76974, 0.83642, 0.92457),
    RGB(0.76674, 0.8346, 0.92412),
    RGB(0.76375, 0.83277, 0.92366),
    RGB(0.76075, 0.83094, 0.92319),
    RGB(0.75776, 0.82912, 0.92272),
    RGB(0.75477, 0.82729, 0.92224),
    RGB(0.75178, 0.82546, 0.92176),
    RGB(0.74878, 0.82363, 0.92127),
    RGB(0.74579, 0.82181, 0.92077),
    RGB(0.7428, 0.81998, 0.92027),
    RGB(0.73982, 0.81816, 0.91976),
    RGB(0.73683, 0.81634, 0.91924),
    RGB(0.73384, 0.81451, 0.91871),
    RGB(0.73086, 0.81269, 0.91818),
    RGB(0.72788, 0.81087, 0.91765),
    RGB(0.72491, 0.80905, 0.9171),
    RGB(0.72192, 0.80723, 0.91654),
    RGB(0.71895, 0.8054, 0.91598),
    RGB(0.71599, 0.80358, 0.91541),
    RGB(0.71301, 0.80176, 0.91483),
    RGB(0.71005, 0.79995, 0.91424),
    RGB(0.70709, 0.79812, 0.91365),
    RGB(0.70413, 0.7963, 0.91304),
    RGB(0.70117, 0.79449, 0.91242),
    RGB(0.69822, 0.79266, 0.91179),
    RGB(0.69528, 0.79084, 0.91116),
    RGB(0.69234, 0.78903, 0.91051),
    RGB(0.6894, 0.78721, 0.90986),
    RGB(0.68646, 0.78539, 0.90919),
    RGB(0.68354, 0.78357, 0.90851),
    RGB(0.68061, 0.78175, 0.90782),
    RGB(0.67771, 0.77993, 0.90711),
    RGB(0.6748, 0.77812, 0.9064),
    RGB(0.6719, 0.7763, 0.90567),
    RGB(0.66901, 0.77447, 0.90492),
    RGB(0.66612, 0.77266, 0.90416),
    RGB(0.66325, 0.77084, 0.90339),
    RGB(0.66038, 0.76902, 0.9026),
    RGB(0.65753, 0.7672, 0.90179),
    RGB(0.65467, 0.76538, 0.90097),
    RGB(0.65185, 0.76356, 0.90013),
    RGB(0.64903, 0.76174, 0.89928),
    RGB(0.64622, 0.75992, 0.89839),
    RGB(0.64342, 0.7581, 0.8975),
    RGB(0.64065, 0.75627, 0.89658),
    RGB(0.63789, 0.75445, 0.89563),
    RGB(0.63514, 0.75262, 0.89466),
    RGB(0.63243, 0.7508, 0.89366),
    RGB(0.62972, 0.74897, 0.89264),
    RGB(0.62705, 0.74715, 0.89159),
    RGB(0.6244, 0.74531, 0.8905),
    RGB(0.62177, 0.74349, 0.88938),
    RGB(0.61919, 0.74165, 0.88823),
    RGB(0.61663, 0.73982, 0.88703),
    RGB(0.6141, 0.73798, 0.88579),
    RGB(0.61162, 0.73613, 0.8845),
    RGB(0.60918, 0.73429, 0.88317),
    RGB(0.60674, 0.73245, 0.88182),
    RGB(0.60432, 0.73061, 0.88046),
    RGB(0.6019, 0.72876, 0.87909),
    RGB(0.5995, 0.72692, 0.87772),
    RGB(0.59711, 0.72508, 0.87632),
    RGB(0.59471, 0.72323, 0.87492),
    RGB(0.59235, 0.72139, 0.87351),
    RGB(0.58997, 0.71955, 0.87209),
    RGB(0.58761, 0.71771, 0.87065),
    RGB(0.58527, 0.71586, 0.86921),
    RGB(0.58292, 0.71402, 0.86776),
    RGB(0.58059, 0.71217, 0.86629),
    RGB(0.57827, 0.71033, 0.86481),
    RGB(0.57597, 0.70849, 0.86333),
    RGB(0.57366, 0.70665, 0.86183),
    RGB(0.57136, 0.7048, 0.86033),
    RGB(0.56908, 0.70296, 0.8588),
    RGB(0.56682, 0.70112, 0.85727),
    RGB(0.56455, 0.69927, 0.85574),
    RGB(0.5623, 0.69743, 0.85418),
    RGB(0.56006, 0.69559, 0.85263),
    RGB(0.55782, 0.69375, 0.85105),
    RGB(0.55559, 0.69191, 0.84947),
    RGB(0.55338, 0.69007, 0.84788),
    RGB(0.55118, 0.68823, 0.84627),
    RGB(0.549, 0.68638, 0.84466),
    RGB(0.54681, 0.68454, 0.84304),
    RGB(0.54464, 0.6827, 0.8414),
    RGB(0.54248, 0.68085, 0.83976),
    RGB(0.54033, 0.67901, 0.8381),
    RGB(0.53819, 0.67718, 0.83644),
    RGB(0.53605, 0.67533, 0.83476),
    RGB(0.53393, 0.67349, 0.83307),
    RGB(0.53183, 0.67165, 0.83138),
    RGB(0.52973, 0.66981, 0.82967),
    RGB(0.52764, 0.66797, 0.82795),
    RGB(0.52557, 0.66613, 0.82622),
    RGB(0.5235, 0.66429, 0.82448),
    RGB(0.52144, 0.66245, 0.82274),
    RGB(0.5194, 0.6606, 0.82097),
    RGB(0.51737, 0.65876, 0.8192),
    RGB(0.51534, 0.65693, 0.81742),
    RGB(0.51333, 0.65508, 0.81564),
    RGB(0.51133, 0.65324, 0.81383),
    RGB(0.50934, 0.65141, 0.81203),
    RGB(0.50737, 0.64957, 0.8102),
    RGB(0.50539, 0.64772, 0.80838),
    RGB(0.50344, 0.64588, 0.80654),
    RGB(0.5015, 0.64404, 0.80469),
    RGB(0.49956, 0.64221, 0.80282),
    RGB(0.49765, 0.64037, 0.80095),
    RGB(0.49573, 0.63853, 0.79907),
    RGB(0.49383, 0.6367, 0.79718),
    RGB(0.49195, 0.63486, 0.79528),
    RGB(0.49007, 0.63302, 0.79337),
    RGB(0.4882, 0.63118, 0.79145),
    RGB(0.48631, 0.62934, 0.78955),
    RGB(0.48439, 0.62751, 0.78769),
    RGB(0.48243, 0.62568, 0.78587),
    RGB(0.48043, 0.62386, 0.78409),
    RGB(0.4784, 0.62203, 0.78233),
    RGB(0.47634, 0.62022, 0.78062),
    RGB(0.47423, 0.61841, 0.77894),
    RGB(0.47211, 0.6166, 0.77729),
    RGB(0.46995, 0.61479, 0.77567),
    RGB(0.46775, 0.61298, 0.77408),
    RGB(0.46552, 0.61119, 0.77252),
    RGB(0.46327, 0.60939, 0.77099),
    RGB(0.461, 0.6076, 0.76947),
    RGB(0.4587, 0.6058, 0.76799),
    RGB(0.45636, 0.60403, 0.76653),
    RGB(0.45401, 0.60223, 0.7651),
    RGB(0.45164, 0.60045, 0.76367),
    RGB(0.44923, 0.59867, 0.76228),
    RGB(0.4468, 0.5969, 0.76091),
    RGB(0.44436, 0.59512, 0.75956),
    RGB(0.44188, 0.59336, 0.75823),
    RGB(0.43937, 0.59159, 0.75691),
    RGB(0.43686, 0.58981, 0.75562),
    RGB(0.43431, 0.58805, 0.75434),
    RGB(0.43176, 0.5863, 0.75308),
    RGB(0.42917, 0.58454, 0.75184),
    RGB(0.42655, 0.58278, 0.75061),
    RGB(0.42392, 0.58102, 0.74939),
    RGB(0.42127, 0.57928, 0.74821),
    RGB(0.4186, 0.57752, 0.74702),
    RGB(0.41591, 0.57578, 0.74586),
    RGB(0.4132, 0.57403, 0.7447),
    RGB(0.41046, 0.57229, 0.74357),
    RGB(0.4077, 0.57054, 0.74245),
    RGB(0.40491, 0.56881, 0.74133),
    RGB(0.40211, 0.56708, 0.74024),
    RGB(0.39929, 0.56533, 0.73915),
    RGB(0.39645, 0.56361, 0.73807),
    RGB(0.39358, 0.56188, 0.73701),
    RGB(0.3907, 0.56015, 0.73596),
    RGB(0.38779, 0.55842, 0.73493),
    RGB(0.38485, 0.5567, 0.7339),
    RGB(0.3819, 0.55498, 0.73288),
    RGB(0.37893, 0.55325, 0.73187),
    RGB(0.37593, 0.55154, 0.73088),
    RGB(0.3729, 0.54983, 0.72989),
    RGB(0.36986, 0.54812, 0.72892),
    RGB(0.36679, 0.54641, 0.72795),
    RGB(0.36369, 0.54469, 0.72699),
    RGB(0.36057, 0.54299, 0.72605),
    RGB(0.35745, 0.54127, 0.72511),
    RGB(0.35426, 0.53957, 0.72418),
    RGB(0.35108, 0.53788, 0.72326),
    RGB(0.34785, 0.53617, 0.72235),
    RGB(0.3446, 0.53447, 0.72144),
    RGB(0.34133, 0.53278, 0.72055),
    RGB(0.33801, 0.53108, 0.71967),
    RGB(0.3347, 0.52939, 0.71879),
    RGB(0.33131, 0.5277, 0.71792),
    RGB(0.32793, 0.52601, 0.71706),
    RGB(0.3245, 0.52432, 0.7162),
    RGB(0.32105, 0.52263, 0.71535),
    RGB(0.31756, 0.52095, 0.7145),
    RGB(0.31404, 0.51927, 0.71368),
    RGB(0.31049, 0.5176, 0.71284),
    RGB(0.30689, 0.5159, 0.71203),
    RGB(0.30325, 0.51424, 0.71122),
    RGB(0.2996, 0.51256, 0.71041),
    RGB(0.29588, 0.51089, 0.70961),
    RGB(0.29213, 0.50922, 0.70882),
    RGB(0.28834, 0.50755, 0.70803),
    RGB(0.2845, 0.50587, 0.70724),
    RGB(0.28061, 0.50422, 0.70647),
    RGB(0.27671, 0.50255, 0.7057),
    RGB(0.27272, 0.50089, 0.70494),
    RGB(0.2687, 0.49923, 0.70418),
    RGB(0.26461, 0.49758, 0.70343),
    RGB(0.26047, 0.49591, 0.70268),
    RGB(0.25627, 0.49427, 0.70194),
    RGB(0.25203, 0.4926, 0.70121),
    RGB(0.24771, 0.49097, 0.70048),
    RGB(0.24329, 0.4893, 0.69975),
    RGB(0.23883, 0.48767, 0.69903),
    RGB(0.23431, 0.48601, 0.69831),
    RGB(0.22967, 0.48437, 0.6976),
], 64), :colorcet)

register_gradient_colors(:bmw, sample_evenly([
    RGB(0, 0.017709, 0.34641),
    RGB(0, 0.020672, 0.3555),
    RGB(0, 0.023402, 0.3646),
    RGB(0, 0.025899, 0.37376),
    RGB(0, 0.028159, 0.38295),
    RGB(0, 0.030176, 0.39217),
    RGB(0, 0.031948, 0.40143),
    RGB(0, 0.03346, 0.41074),
    RGB(0, 0.034886, 0.42006),
    RGB(0, 0.036005, 0.42943),
    RGB(0, 0.037031, 0.43882),
    RGB(0, 0.038092, 0.44825),
    RGB(0, 0.039171, 0.45769),
    RGB(0, 0.04027, 0.46718),
    RGB(0, 0.041408, 0.47668),
    RGB(0, 0.042463, 0.4862),
    RGB(0, 0.043503, 0.49576),
    RGB(0, 0.044741, 0.50533),
    RGB(0, 0.045774, 0.51494),
    RGB(0, 0.047001, 0.52456),
    RGB(0, 0.048092, 0.5342),
    RGB(0, 0.049352, 0.54387),
    RGB(0, 0.050447, 0.55355),
    RGB(0, 0.051609, 0.56326),
    RGB(0, 0.052795, 0.57298),
    RGB(0, 0.054014, 0.58271),
    RGB(0, 0.055261, 0.59247),
    RGB(0, 0.056563, 0.60223),
    RGB(0, 0.057716, 0.61201),
    RGB(0, 0.059101, 0.6218),
    RGB(0, 0.060386, 0.63161),
    RGB(0, 0.061629, 0.64141),
    RGB(0, 0.063072, 0.65124),
    RGB(0, 0.064391, 0.66106),
    RGB(0, 0.065778, 0.6709),
    RGB(0, 0.067217, 0.68073),
    RGB(0, 0.068717, 0.69056),
    RGB(0, 0.070145, 0.7004),
    RGB(0, 0.071697, 0.71023),
    RGB(0, 0.073287, 0.72005),
    RGB(0, 0.074826, 0.72985),
    RGB(0, 0.076443, 0.73965),
    RGB(0, 0.078139, 0.74942),
    RGB(0, 0.079895, 0.75915),
    RGB(0, 0.08168, 0.76872),
    RGB(0, 0.083307, 0.77811),
    RGB(0, 0.084962, 0.78731),
    RGB(0, 0.086573, 0.79632),
    RGB(0, 0.088156, 0.80515),
    RGB(0, 0.089689, 0.81379),
    RGB(0, 0.091208, 0.82225),
    RGB(0, 0.092616, 0.83051),
    RGB(0, 0.09408, 0.83857),
    RGB(0, 0.095474, 0.84644),
    RGB(0, 0.096762, 0.8541),
    RGB(0, 0.098154, 0.86158),
    RGB(0, 0.099403, 0.86886),
    RGB(0, 0.10065, 0.87593),
    RGB(0, 0.10187, 0.88281),
    RGB(0, 0.10309, 0.88949),
    RGB(0, 0.1042, 0.89597),
    RGB(0, 0.10532, 0.90224),
    RGB(0, 0.10647, 0.9083),
    RGB(0, 0.10749, 0.91415),
    RGB(0, 0.10849, 0.9198),
    RGB(0, 0.10956, 0.92525),
    RGB(0, 0.11052, 0.9305),
    RGB(0, 0.11147, 0.93553),
    RGB(0, 0.1124, 0.94036),
    RGB(0, 0.11331, 0.94497),
    RGB(0, 0.11413, 0.94937),
    RGB(0, 0.11498, 0.95357),
    RGB(0, 0.11585, 0.9576),
    RGB(0, 0.11662, 0.96148),
    RGB(0, 0.11733, 0.96522),
    RGB(0, 0.11806, 0.96883),
    RGB(0, 0.11873, 0.97228),
    RGB(0, 0.11931, 0.97558),
    RGB(0, 0.11987, 0.97874),
    RGB(0, 0.12039, 0.98176),
    RGB(0, 0.12087, 0.98464),
    RGB(0, 0.12132, 0.98737),
    RGB(0, 0.12173, 0.98995),
    RGB(0.042484, 0.1221, 0.99239),
    RGB(0.096239, 0.12243, 0.99468),
    RGB(0.13272, 0.12272, 0.99682),
    RGB(0.16225, 0.12297, 0.99881),
    RGB(0.18788, 0.12318, 1),
    RGB(0.21091, 0.12336, 1),
    RGB(0.23216, 0.1235, 1),
    RGB(0.25202, 0.1236, 1),
    RGB(0.27081, 0.12366, 1),
    RGB(0.28872, 0.12369, 1),
    RGB(0.30596, 0.12367, 1),
    RGB(0.32259, 0.12362, 1),
    RGB(0.33869, 0.12354, 1),
    RGB(0.35436, 0.12342, 1),
    RGB(0.36964, 0.12326, 1),
    RGB(0.38457, 0.12307, 1),
    RGB(0.39919, 0.12286, 1),
    RGB(0.41348, 0.12262, 1),
    RGB(0.42736, 0.12239, 1),
    RGB(0.44084, 0.12216, 1),
    RGB(0.454, 0.12195, 1),
    RGB(0.46684, 0.12174, 1),
    RGB(0.47939, 0.12155, 1),
    RGB(0.49169, 0.12136, 1),
    RGB(0.50374, 0.12117, 1),
    RGB(0.51557, 0.121, 1),
    RGB(0.52721, 0.12083, 1),
    RGB(0.53866, 0.12067, 1),
    RGB(0.54992, 0.12051, 1),
    RGB(0.56102, 0.12037, 1),
    RGB(0.57198, 0.12022, 1),
    RGB(0.58279, 0.12009, 1),
    RGB(0.59347, 0.11996, 1),
    RGB(0.60403, 0.11983, 1),
    RGB(0.61446, 0.11971, 1),
    RGB(0.62479, 0.11959, 1),
    RGB(0.63501, 0.11948, 1),
    RGB(0.64513, 0.11938, 1),
    RGB(0.65516, 0.11927, 1),
    RGB(0.66511, 0.11918, 1),
    RGB(0.67497, 0.11908, 1),
    RGB(0.68475, 0.11899, 1),
    RGB(0.69445, 0.1189, 1),
    RGB(0.7041, 0.11881, 1),
    RGB(0.71366, 0.11873, 1),
    RGB(0.72312, 0.11873, 1),
    RGB(0.73244, 0.11896, 1),
    RGB(0.74156, 0.11949, 1),
    RGB(0.75051, 0.12036, 1),
    RGB(0.75927, 0.12156, 1),
    RGB(0.76785, 0.12312, 1),
    RGB(0.77627, 0.12504, 1),
    RGB(0.78452, 0.12724, 1),
    RGB(0.79261, 0.12981, 1),
    RGB(0.80054, 0.13262, 1),
    RGB(0.80832, 0.1357, 1),
    RGB(0.81594, 0.1391, 1),
    RGB(0.82341, 0.14279, 1),
    RGB(0.83074, 0.14669, 1),
    RGB(0.83791, 0.15087, 1),
    RGB(0.84494, 0.15527, 1),
    RGB(0.85183, 0.15984, 1),
    RGB(0.85859, 0.16467, 1),
    RGB(0.8652, 0.16967, 1),
    RGB(0.87169, 0.17481, 1),
    RGB(0.87803, 0.1801, 1),
    RGB(0.88424, 0.18562, 1),
    RGB(0.89031, 0.1912, 1),
    RGB(0.89626, 0.19697, 1),
    RGB(0.90207, 0.20282, 1),
    RGB(0.90776, 0.2088, 1),
    RGB(0.91332, 0.21488, 1),
    RGB(0.91875, 0.22109, 1),
    RGB(0.92405, 0.22737, 1),
    RGB(0.92919, 0.23379, 1),
    RGB(0.93415, 0.24041, 1),
    RGB(0.93894, 0.2472, 1),
    RGB(0.94355, 0.25413, 1),
    RGB(0.94798, 0.26118, 1),
    RGB(0.95224, 0.26837, 1),
    RGB(0.95633, 0.2757, 1),
    RGB(0.96024, 0.28311, 1),
    RGB(0.96396, 0.29064, 1),
    RGB(0.96751, 0.29827, 1),
    RGB(0.97089, 0.30602, 1),
    RGB(0.97409, 0.31382, 1),
    RGB(0.97712, 0.3217, 1),
    RGB(0.97997, 0.32968, 1),
    RGB(0.98265, 0.33769, 1),
    RGB(0.98515, 0.34577, 1),
    RGB(0.98746, 0.35394, 1),
    RGB(0.9896, 0.36216, 1),
    RGB(0.99155, 0.37042, 1),
    RGB(0.99333, 0.37874, 1),
    RGB(0.99493, 0.3871, 1),
    RGB(0.99635, 0.39551, 1),
    RGB(0.9976, 0.40394, 1),
    RGB(0.99866, 0.41243, 1),
    RGB(0.99953, 0.42094, 1),
    RGB(1, 0.4295, 1),
    RGB(1, 0.43809, 1),
    RGB(1, 0.44668, 1),
    RGB(1, 0.45524, 1),
    RGB(1, 0.46369, 1),
    RGB(1, 0.47203, 1),
    RGB(1, 0.48024, 1),
    RGB(1, 0.48835, 1),
    RGB(1, 0.49634, 1),
    RGB(1, 0.50426, 1),
    RGB(1, 0.51206, 1),
    RGB(1, 0.51978, 1),
    RGB(1, 0.52742, 1),
    RGB(1, 0.53498, 1),
    RGB(1, 0.54247, 1),
    RGB(1, 0.54988, 1),
    RGB(1, 0.55722, 1),
    RGB(1, 0.56449, 1),
    RGB(1, 0.57169, 1),
    RGB(1, 0.57884, 1),
    RGB(1, 0.58594, 1),
    RGB(1, 0.59297, 1),
    RGB(1, 0.59995, 1),
    RGB(1, 0.60688, 1),
    RGB(1, 0.61374, 1),
    RGB(1, 0.62058, 1),
    RGB(1, 0.62736, 1),
    RGB(1, 0.6341, 1),
    RGB(1, 0.64079, 1),
    RGB(1, 0.64743, 1),
    RGB(1, 0.65405, 1),
    RGB(1, 0.66063, 1),
    RGB(1, 0.66718, 1),
    RGB(1, 0.6737, 1),
    RGB(1, 0.68019, 1),
    RGB(1, 0.68667, 1),
    RGB(1, 0.69312, 1),
    RGB(1, 0.69954, 1),
    RGB(1, 0.70595, 1),
    RGB(1, 0.71233, 1),
    RGB(1, 0.71869, 1),
    RGB(1, 0.72504, 1),
    RGB(1, 0.73136, 1),
    RGB(1, 0.73767, 1),
    RGB(1, 0.74396, 1),
    RGB(1, 0.75023, 1),
    RGB(1, 0.75649, 1),
    RGB(1, 0.76273, 1),
    RGB(1, 0.76895, 1),
    RGB(1, 0.77517, 1),
    RGB(1, 0.78137, 1),
    RGB(1, 0.78755, 1),
    RGB(1, 0.79372, 1),
    RGB(1, 0.79988, 1),
    RGB(1, 0.80602, 1),
    RGB(1, 0.81215, 1),
    RGB(1, 0.81826, 1),
    RGB(1, 0.82437, 1),
    RGB(1, 0.83047, 1),
    RGB(1, 0.83656, 1),
    RGB(1, 0.84263, 1),
    RGB(1, 0.84869, 1),
    RGB(1, 0.85475, 1),
    RGB(1, 0.86079, 1),
    RGB(1, 0.86683, 1),
    RGB(1, 0.87286, 0.99978),
    RGB(1, 0.87887, 0.9995),
    RGB(1, 0.88488, 0.99921),
    RGB(1, 0.89088, 0.99892),
    RGB(0.99975, 0.89688, 0.99861),
    RGB(0.99925, 0.90287, 0.9983),
    RGB(0.99872, 0.90884, 0.99799),
    RGB(0.99817, 0.91481, 0.99766),
    RGB(0.9976, 0.92077, 0.99733),
], 64), :colorcet)

register_gradient_colors(:colorwheel, sample_evenly([
    RGB(0.18062, 0.13244, 0.91856),
    RGB(0.19173, 0.12446, 0.92396),
    RGB(0.20389, 0.11765, 0.92889),
    RGB(0.21681, 0.11214, 0.93335),
    RGB(0.23028, 0.10794, 0.93739),
    RGB(0.24417, 0.10525, 0.94101),
    RGB(0.25828, 0.10403, 0.94425),
    RGB(0.27246, 0.10417, 0.94716),
    RGB(0.28659, 0.1056, 0.94977),
    RGB(0.30059, 0.10807, 0.95212),
    RGB(0.3144, 0.11153, 0.95426),
    RGB(0.32796, 0.11565, 0.95622),
    RGB(0.34126, 0.12031, 0.95803),
    RGB(0.35426, 0.12544, 0.95973),
    RGB(0.36698, 0.13084, 0.96134),
    RGB(0.37942, 0.13637, 0.96288),
    RGB(0.3916, 0.1421, 0.96436),
    RGB(0.40352, 0.14786, 0.96581),
    RGB(0.4152, 0.15363, 0.96722),
    RGB(0.42669, 0.15941, 0.9686),
    RGB(0.43799, 0.16515, 0.96996),
    RGB(0.44913, 0.17088, 0.97129),
    RGB(0.46013, 0.1765, 0.97261),
    RGB(0.47106, 0.18204, 0.97389),
    RGB(0.48191, 0.18751, 0.97514),
    RGB(0.49273, 0.1928, 0.97635),
    RGB(0.50357, 0.19798, 0.97752),
    RGB(0.51446, 0.20302, 0.97863),
    RGB(0.52541, 0.2079, 0.97969),
    RGB(0.53647, 0.21259, 0.98067),
    RGB(0.54767, 0.21709, 0.98157),
    RGB(0.55903, 0.22137, 0.98238),
    RGB(0.57057, 0.22542, 0.9831),
    RGB(0.5823, 0.22925, 0.98372),
    RGB(0.59423, 0.23284, 0.98424),
    RGB(0.60636, 0.23623, 0.98465),
    RGB(0.61868, 0.23935, 0.98497),
    RGB(0.63116, 0.24227, 0.98518),
    RGB(0.64379, 0.24496, 0.9853),
    RGB(0.65656, 0.2475, 0.98533),
    RGB(0.66943, 0.24982, 0.98527),
    RGB(0.68237, 0.25203, 0.98515),
    RGB(0.69537, 0.25408, 0.98496),
    RGB(0.70839, 0.25601, 0.98471),
    RGB(0.72139, 0.25786, 0.98441),
    RGB(0.73437, 0.25968, 0.98405),
    RGB(0.74728, 0.26143, 0.98365),
    RGB(0.76012, 0.26319, 0.98321),
    RGB(0.77286, 0.26494, 0.98271),
    RGB(0.78548, 0.26676, 0.98216),
    RGB(0.79794, 0.26867, 0.98153),
    RGB(0.81023, 0.27069, 0.98082),
    RGB(0.82233, 0.27285, 0.98001),
    RGB(0.83418, 0.27525, 0.97905),
    RGB(0.84576, 0.27791, 0.97793),
    RGB(0.85702, 0.28089, 0.97661),
    RGB(0.86794, 0.2843, 0.97504),
    RGB(0.87845, 0.28819, 0.97317),
    RGB(0.88852, 0.29263, 0.97097),
    RGB(0.8981, 0.29768, 0.96837),
    RGB(0.90717, 0.3034, 0.96533),
    RGB(0.91567, 0.30984, 0.96182),
    RGB(0.92361, 0.317, 0.9578),
    RGB(0.93095, 0.32489, 0.95323),
    RGB(0.93769, 0.33352, 0.94809),
    RGB(0.94383, 0.34283, 0.94239),
    RGB(0.94939, 0.35275, 0.93613),
    RGB(0.95439, 0.36323, 0.92931),
    RGB(0.95886, 0.37422, 0.92198),
    RGB(0.96283, 0.38558, 0.91416),
    RGB(0.96634, 0.39727, 0.90588),
    RGB(0.96944, 0.40921, 0.89721),
    RGB(0.97216, 0.4213, 0.88817),
    RGB(0.97454, 0.4335, 0.87883),
    RGB(0.97663, 0.44573, 0.86923),
    RGB(0.97845, 0.45797, 0.8594),
    RGB(0.98004, 0.47017, 0.84939),
    RGB(0.98142, 0.48228, 0.83922),
    RGB(0.98262, 0.4943, 0.82894),
    RGB(0.98364, 0.5062, 0.81854),
    RGB(0.98453, 0.51799, 0.80808),
    RGB(0.98527, 0.52964, 0.79753),
    RGB(0.98588, 0.54116, 0.78694),
    RGB(0.98637, 0.55255, 0.77629),
    RGB(0.98676, 0.56382, 0.76559),
    RGB(0.98704, 0.57494, 0.75486),
    RGB(0.98722, 0.58595, 0.74407),
    RGB(0.98733, 0.59683, 0.73326),
    RGB(0.98736, 0.60758, 0.72241),
    RGB(0.98732, 0.61821, 0.71153),
    RGB(0.98723, 0.62871, 0.7006),
    RGB(0.9871, 0.63909, 0.68965),
    RGB(0.98694, 0.64936, 0.67864),
    RGB(0.98677, 0.65949, 0.66762),
    RGB(0.9866, 0.6695, 0.65654),
    RGB(0.98644, 0.67938, 0.64543),
    RGB(0.9863, 0.68916, 0.63428),
    RGB(0.98621, 0.69879, 0.62309),
    RGB(0.98616, 0.70831, 0.61184),
    RGB(0.98617, 0.71772, 0.60055),
    RGB(0.98624, 0.727, 0.5892),
    RGB(0.98636, 0.73618, 0.57779),
    RGB(0.98653, 0.74526, 0.56632),
    RGB(0.98675, 0.75426, 0.55476),
    RGB(0.98702, 0.76315, 0.54311),
    RGB(0.98731, 0.77198, 0.53134),
    RGB(0.98761, 0.78074, 0.51946),
    RGB(0.98792, 0.78944, 0.50744),
    RGB(0.9882, 0.79807, 0.49526),
    RGB(0.98845, 0.80666, 0.48291),
    RGB(0.98864, 0.81518, 0.47039),
    RGB(0.98875, 0.82365, 0.45765),
    RGB(0.98875, 0.83206, 0.4447),
    RGB(0.98863, 0.84039, 0.43151),
    RGB(0.98834, 0.84863, 0.41804),
    RGB(0.98786, 0.85677, 0.40433),
    RGB(0.98715, 0.86476, 0.39033),
    RGB(0.98616, 0.87259, 0.37607),
    RGB(0.98485, 0.8802, 0.36152),
    RGB(0.98316, 0.88754, 0.3467),
    RGB(0.98105, 0.89458, 0.33163),
    RGB(0.97845, 0.90123, 0.31637),
    RGB(0.97534, 0.90744, 0.30092),
    RGB(0.97166, 0.91315, 0.28537),
    RGB(0.96737, 0.91831, 0.26983),
    RGB(0.96244, 0.92285, 0.25432),
    RGB(0.95686, 0.92672, 0.23895),
    RGB(0.95064, 0.9299, 0.22388),
    RGB(0.94377, 0.93236, 0.2092),
    RGB(0.93628, 0.9341, 0.19506),
    RGB(0.9282, 0.93512, 0.18153),
    RGB(0.91959, 0.93544, 0.16884),
    RGB(0.91047, 0.9351, 0.15697),
    RGB(0.90091, 0.93414, 0.1461),
    RGB(0.89097, 0.93263, 0.13623),
    RGB(0.8807, 0.93061, 0.12747),
    RGB(0.87014, 0.92815, 0.11977),
    RGB(0.85937, 0.92531, 0.11315),
    RGB(0.8484, 0.92216, 0.10742),
    RGB(0.83729, 0.91874, 0.10257),
    RGB(0.82605, 0.91511, 0.098502),
    RGB(0.81472, 0.91132, 0.095091),
    RGB(0.80332, 0.90739, 0.092162),
    RGB(0.79187, 0.90336, 0.089659),
    RGB(0.78036, 0.89925, 0.087518),
    RGB(0.76881, 0.89508, 0.08551),
    RGB(0.75723, 0.89086, 0.083837),
    RGB(0.74562, 0.88662, 0.082243),
    RGB(0.73398, 0.88235, 0.080673),
    RGB(0.7223, 0.87807, 0.079194),
    RGB(0.7106, 0.87376, 0.077792),
    RGB(0.69886, 0.86946, 0.076415),
    RGB(0.6871, 0.86514, 0.075063),
    RGB(0.67529, 0.86082, 0.073757),
    RGB(0.66346, 0.85649, 0.072319),
    RGB(0.65156, 0.85215, 0.071005),
    RGB(0.63963, 0.8478, 0.069678),
    RGB(0.62764, 0.84345, 0.068313),
    RGB(0.6156, 0.83909, 0.066946),
    RGB(0.60351, 0.83473, 0.065602),
    RGB(0.59134, 0.83035, 0.064284),
    RGB(0.57911, 0.82597, 0.063016),
    RGB(0.56681, 0.82158, 0.061599),
    RGB(0.55443, 0.81718, 0.060374),
    RGB(0.54195, 0.81278, 0.059088),
    RGB(0.5294, 0.80837, 0.057695),
    RGB(0.51672, 0.80395, 0.056522),
    RGB(0.50395, 0.79952, 0.055189),
    RGB(0.49106, 0.79508, 0.053903),
    RGB(0.47801, 0.79064, 0.052644),
    RGB(0.46484, 0.78619, 0.051424),
    RGB(0.45151, 0.78173, 0.050257),
    RGB(0.43803, 0.77726, 0.04922),
    RGB(0.42437, 0.77277, 0.04812),
    RGB(0.41056, 0.76827, 0.047322),
    RGB(0.39656, 0.76375, 0.04674),
    RGB(0.38239, 0.75922, 0.046427),
    RGB(0.36808, 0.75466, 0.046596),
    RGB(0.35361, 0.75006, 0.047299),
    RGB(0.33906, 0.74543, 0.04874),
    RGB(0.32443, 0.74075, 0.050897),
    RGB(0.30984, 0.73602, 0.054069),
    RGB(0.29532, 0.73122, 0.058336),
    RGB(0.28105, 0.72634, 0.063783),
    RGB(0.26717, 0.72137, 0.070322),
    RGB(0.25387, 0.71631, 0.077992),
    RGB(0.24134, 0.71112, 0.08687),
    RGB(0.22981, 0.7058, 0.096608),
    RGB(0.21961, 0.70035, 0.10741),
    RGB(0.21092, 0.69475, 0.11899),
    RGB(0.204, 0.68901, 0.13129),
    RGB(0.19894, 0.6831, 0.14422),
    RGB(0.19593, 0.67703, 0.15768),
    RGB(0.19486, 0.67081, 0.17161),
    RGB(0.1956, 0.66443, 0.18594),
    RGB(0.19795, 0.65791, 0.2005),
    RGB(0.20163, 0.65125, 0.21533),
    RGB(0.20639, 0.64446, 0.2303),
    RGB(0.21183, 0.63756, 0.24538),
    RGB(0.21771, 0.63057, 0.26052),
    RGB(0.22381, 0.62348, 0.27565),
    RGB(0.22992, 0.61632, 0.29071),
    RGB(0.23593, 0.6091, 0.30574),
    RGB(0.24162, 0.60182, 0.32064),
    RGB(0.24693, 0.5945, 0.33543),
    RGB(0.25184, 0.58716, 0.35008),
    RGB(0.25622, 0.5798, 0.36459),
    RGB(0.26011, 0.57242, 0.37897),
    RGB(0.26346, 0.56501, 0.3932),
    RGB(0.26624, 0.55762, 0.4073),
    RGB(0.26846, 0.55021, 0.42127),
    RGB(0.27013, 0.5428, 0.43513),
    RGB(0.27122, 0.53539, 0.44886),
    RGB(0.27173, 0.52798, 0.46247),
    RGB(0.2717, 0.52057, 0.476),
    RGB(0.27112, 0.51317, 0.48942),
    RGB(0.26997, 0.50576, 0.50275),
    RGB(0.26823, 0.49837, 0.516),
    RGB(0.26598, 0.49096, 0.52919),
    RGB(0.26316, 0.48352, 0.54228),
    RGB(0.25982, 0.4761, 0.55529),
    RGB(0.25594, 0.46864, 0.56822),
    RGB(0.25162, 0.46117, 0.58105),
    RGB(0.2468, 0.45365, 0.5938),
    RGB(0.24161, 0.44609, 0.60643),
    RGB(0.23605, 0.43849, 0.61894),
    RGB(0.23017, 0.43081, 0.63131),
    RGB(0.2241, 0.42303, 0.64353),
    RGB(0.21793, 0.41517, 0.6556),
    RGB(0.2117, 0.40718, 0.66749),
    RGB(0.2055, 0.39906, 0.67919),
    RGB(0.19945, 0.39079, 0.6907),
    RGB(0.19367, 0.38234, 0.70201),
    RGB(0.18818, 0.37372, 0.71312),
    RGB(0.183, 0.36488, 0.72404),
    RGB(0.17829, 0.35585, 0.73477),
    RGB(0.17392, 0.34657, 0.7453),
    RGB(0.16999, 0.33707, 0.75566),
    RGB(0.16639, 0.32732, 0.76586),
    RGB(0.16312, 0.31735, 0.7759),
    RGB(0.16005, 0.30712, 0.78581),
    RGB(0.15724, 0.29667, 0.79557),
    RGB(0.15457, 0.28595, 0.80522),
    RGB(0.15202, 0.27505, 0.81474),
    RGB(0.14966, 0.26395, 0.82414),
    RGB(0.14744, 0.25264, 0.8334),
    RGB(0.14554, 0.24118, 0.84252),
    RGB(0.14402, 0.2296, 0.85145),
    RGB(0.14312, 0.218, 0.86019),
    RGB(0.14305, 0.20639, 0.86869),
    RGB(0.14404, 0.19481, 0.87691),
    RGB(0.1463, 0.18336, 0.88484),
    RGB(0.15007, 0.17219, 0.89241),
    RGB(0.15537, 0.1614, 0.8996),
    RGB(0.1623, 0.15103, 0.90637),
    RGB(0.17075, 0.14136, 0.9127),
], 64), :colorcet)

register_gradient_colors(:coolwarm, sample_evenly([
    RGB(0.12757, 0.31619, 0.85836),
    RGB(0.14675, 0.32048, 0.85923),
    RGB(0.16386, 0.32476, 0.8601),
    RGB(0.17936, 0.3291, 0.86096),
    RGB(0.1937, 0.33343, 0.86182),
    RGB(0.20708, 0.33776, 0.86268),
    RGB(0.21967, 0.34213, 0.86354),
    RGB(0.23162, 0.34649, 0.86439),
    RGB(0.24297, 0.35089, 0.86524),
    RGB(0.25389, 0.35529, 0.86609),
    RGB(0.26436, 0.35969, 0.86693),
    RGB(0.27445, 0.36411, 0.86778),
    RGB(0.28422, 0.36855, 0.86862),
    RGB(0.29369, 0.37299, 0.86945),
    RGB(0.30289, 0.37746, 0.87028),
    RGB(0.31184, 0.38192, 0.87112),
    RGB(0.32061, 0.3864, 0.87195),
    RGB(0.32914, 0.39091, 0.87277),
    RGB(0.33747, 0.39542, 0.8736),
    RGB(0.34563, 0.39992, 0.87442),
    RGB(0.35364, 0.40445, 0.87523),
    RGB(0.36151, 0.40899, 0.87605),
    RGB(0.36923, 0.41355, 0.87686),
    RGB(0.37682, 0.4181, 0.87767),
    RGB(0.38428, 0.42267, 0.87847),
    RGB(0.39164, 0.42727, 0.87927),
    RGB(0.39887, 0.43186, 0.88007),
    RGB(0.40603, 0.43645, 0.88087),
    RGB(0.41307, 0.44106, 0.88167),
    RGB(0.42002, 0.44568, 0.88245),
    RGB(0.4269, 0.45032, 0.88324),
    RGB(0.43367, 0.45496, 0.88403),
    RGB(0.44039, 0.45961, 0.88481),
    RGB(0.44703, 0.46428, 0.88559),
    RGB(0.45359, 0.46894, 0.88636),
    RGB(0.46009, 0.47361, 0.88713),
    RGB(0.46653, 0.4783, 0.8879),
    RGB(0.4729, 0.483, 0.88867),
    RGB(0.47922, 0.48771, 0.88943),
    RGB(0.48547, 0.49242, 0.89019),
    RGB(0.49169, 0.49715, 0.89094),
    RGB(0.49784, 0.50188, 0.8917),
    RGB(0.50394, 0.50662, 0.89245),
    RGB(0.50999, 0.51137, 0.89319),
    RGB(0.516, 0.51612, 0.89394),
    RGB(0.52196, 0.5209, 0.89468),
    RGB(0.52789, 0.52567, 0.89541),
    RGB(0.53377, 0.53046, 0.89615),
    RGB(0.53962, 0.53525, 0.89688),
    RGB(0.54543, 0.54005, 0.8976),
    RGB(0.5512, 0.54486, 0.89832),
    RGB(0.55693, 0.54968, 0.89905),
    RGB(0.56263, 0.5545, 0.89976),
    RGB(0.56829, 0.55933, 0.90048),
    RGB(0.57392, 0.56418, 0.90119),
    RGB(0.57953, 0.56902, 0.90189),
    RGB(0.5851, 0.57388, 0.9026),
    RGB(0.59064, 0.57874, 0.9033),
    RGB(0.59616, 0.58361, 0.90399),
    RGB(0.60164, 0.58849, 0.90468),
    RGB(0.60711, 0.59339, 0.90538),
    RGB(0.61254, 0.59828, 0.90606),
    RGB(0.61795, 0.60318, 0.90674),
    RGB(0.62334, 0.6081, 0.90742),
    RGB(0.6287, 0.613, 0.9081),
    RGB(0.63404, 0.61793, 0.90877),
    RGB(0.63935, 0.62287, 0.90943),
    RGB(0.64464, 0.62781, 0.9101),
    RGB(0.64992, 0.63275, 0.91076),
    RGB(0.65517, 0.63771, 0.91142),
    RGB(0.66041, 0.64267, 0.91207),
    RGB(0.66562, 0.64763, 0.91272),
    RGB(0.67082, 0.65261, 0.91337),
    RGB(0.67599, 0.6576, 0.91401),
    RGB(0.68115, 0.66259, 0.91465),
    RGB(0.68629, 0.66758, 0.91528),
    RGB(0.69141, 0.67259, 0.91591),
    RGB(0.69652, 0.6776, 0.91655),
    RGB(0.70161, 0.68261, 0.91717),
    RGB(0.70669, 0.68763, 0.91779),
    RGB(0.71175, 0.69267, 0.91841),
    RGB(0.71679, 0.6977, 0.91902),
    RGB(0.72181, 0.70275, 0.91963),
    RGB(0.72683, 0.70779, 0.92023),
    RGB(0.73183, 0.71285, 0.92083),
    RGB(0.73682, 0.71792, 0.92143),
    RGB(0.74179, 0.72298, 0.92203),
    RGB(0.74675, 0.72806, 0.92262),
    RGB(0.7517, 0.73315, 0.92321),
    RGB(0.75663, 0.73823, 0.92379),
    RGB(0.76155, 0.74334, 0.92436),
    RGB(0.76647, 0.74844, 0.92494),
    RGB(0.77137, 0.75354, 0.92551),
    RGB(0.77625, 0.75866, 0.92608),
    RGB(0.78113, 0.76378, 0.92664),
    RGB(0.78599, 0.76891, 0.9272),
    RGB(0.79084, 0.77404, 0.92775),
    RGB(0.79569, 0.77918, 0.9283),
    RGB(0.80052, 0.78434, 0.92885),
    RGB(0.80534, 0.78949, 0.92939),
    RGB(0.81015, 0.79464, 0.92993),
    RGB(0.81496, 0.79981, 0.93047),
    RGB(0.81975, 0.80498, 0.931),
    RGB(0.82454, 0.81015, 0.93152),
    RGB(0.82932, 0.81534, 0.93204),
    RGB(0.83408, 0.82053, 0.93256),
    RGB(0.83884, 0.82573, 0.93308),
    RGB(0.84359, 0.83093, 0.93358),
    RGB(0.84833, 0.83612, 0.93407),
    RGB(0.85306, 0.84131, 0.93455),
    RGB(0.85779, 0.84648, 0.935),
    RGB(0.8625, 0.85164, 0.93542),
    RGB(0.86719, 0.85675, 0.9358),
    RGB(0.87187, 0.86182, 0.93612),
    RGB(0.87652, 0.86682, 0.93638),
    RGB(0.88114, 0.87172, 0.93653),
    RGB(0.88573, 0.87649, 0.93657),
    RGB(0.89027, 0.8811, 0.93646),
    RGB(0.89475, 0.8855, 0.93617),
    RGB(0.89915, 0.88964, 0.93565),
    RGB(0.90346, 0.89347, 0.93488),
    RGB(0.90766, 0.89694, 0.9338),
    RGB(0.91172, 0.89998, 0.93239),
    RGB(0.91562, 0.90254, 0.9306),
    RGB(0.91935, 0.90457, 0.9284),
    RGB(0.92288, 0.90602, 0.92576),
    RGB(0.92619, 0.90686, 0.92266),
    RGB(0.92926, 0.90706, 0.91909),
    RGB(0.93208, 0.9066, 0.91506),
    RGB(0.93464, 0.90549, 0.91056),
    RGB(0.93695, 0.90374, 0.90562),
    RGB(0.93899, 0.90139, 0.90027),
    RGB(0.94078, 0.89845, 0.89453),
    RGB(0.94232, 0.89499, 0.88845),
    RGB(0.94363, 0.89105, 0.88206),
    RGB(0.94474, 0.8867, 0.87541),
    RGB(0.94565, 0.88198, 0.86855),
    RGB(0.94638, 0.87695, 0.86149),
    RGB(0.94697, 0.87168, 0.85429),
    RGB(0.94743, 0.86619, 0.84698),
    RGB(0.94776, 0.86054, 0.83959),
    RGB(0.948, 0.85477, 0.83212),
    RGB(0.94815, 0.8489, 0.82461),
    RGB(0.94822, 0.84295, 0.81708),
    RGB(0.94823, 0.83695, 0.80952),
    RGB(0.94818, 0.83092, 0.80196),
    RGB(0.94808, 0.82486, 0.79439),
    RGB(0.94793, 0.81878, 0.78683),
    RGB(0.94774, 0.81269, 0.77926),
    RGB(0.9475, 0.8066, 0.77171),
    RGB(0.94722, 0.8005, 0.76417),
    RGB(0.9469, 0.7944, 0.75665),
    RGB(0.94655, 0.78831, 0.74913),
    RGB(0.94616, 0.78221, 0.74163),
    RGB(0.94574, 0.77612, 0.73414),
    RGB(0.94528, 0.77003, 0.72666),
    RGB(0.94479, 0.76394, 0.7192),
    RGB(0.94425, 0.75785, 0.71174),
    RGB(0.94369, 0.75176, 0.7043),
    RGB(0.94309, 0.74567, 0.69687),
    RGB(0.94245, 0.73959, 0.68946),
    RGB(0.94178, 0.73349, 0.68205),
    RGB(0.94108, 0.7274, 0.67466),
    RGB(0.94034, 0.72131, 0.66728),
    RGB(0.93957, 0.71523, 0.65991),
    RGB(0.93876, 0.70914, 0.65256),
    RGB(0.93793, 0.70305, 0.64521),
    RGB(0.93706, 0.69695, 0.63789),
    RGB(0.93616, 0.69086, 0.63058),
    RGB(0.93522, 0.68477, 0.62327),
    RGB(0.93425, 0.67867, 0.61598),
    RGB(0.93325, 0.67258, 0.60871),
    RGB(0.93222, 0.66648, 0.60143),
    RGB(0.93116, 0.66038, 0.59418),
    RGB(0.93006, 0.65428, 0.58694),
    RGB(0.92893, 0.64818, 0.57973),
    RGB(0.92777, 0.64208, 0.57251),
    RGB(0.92659, 0.63597, 0.5653),
    RGB(0.92537, 0.62986, 0.55812),
    RGB(0.92412, 0.62375, 0.55095),
    RGB(0.92285, 0.61762, 0.54379),
    RGB(0.92154, 0.61151, 0.53665),
    RGB(0.9202, 0.60538, 0.52951),
    RGB(0.91883, 0.59925, 0.52238),
    RGB(0.91743, 0.59312, 0.51527),
    RGB(0.916, 0.58697, 0.50819),
    RGB(0.91455, 0.58083, 0.5011),
    RGB(0.91306, 0.57468, 0.49403),
    RGB(0.91155, 0.56853, 0.48698),
    RGB(0.91001, 0.56237, 0.47994),
    RGB(0.90844, 0.55619, 0.4729),
    RGB(0.90684, 0.55002, 0.46589),
    RGB(0.90521, 0.54384, 0.45889),
    RGB(0.90355, 0.53765, 0.45191),
    RGB(0.90187, 0.53145, 0.44493),
    RGB(0.90016, 0.52524, 0.43797),
    RGB(0.89842, 0.51903, 0.43102),
    RGB(0.89665, 0.51279, 0.42408),
    RGB(0.89486, 0.50655, 0.41717),
    RGB(0.89304, 0.5003, 0.41026),
    RGB(0.89119, 0.49404, 0.40336),
    RGB(0.88932, 0.48777, 0.39647),
    RGB(0.88741, 0.48147, 0.3896),
    RGB(0.88549, 0.47518, 0.38274),
    RGB(0.88354, 0.46885, 0.3759),
    RGB(0.88156, 0.46251, 0.36907),
    RGB(0.87955, 0.45616, 0.36225),
    RGB(0.87752, 0.4498, 0.35546),
    RGB(0.87547, 0.44341, 0.34865),
    RGB(0.87338, 0.437, 0.34187),
    RGB(0.87128, 0.43057, 0.33511),
    RGB(0.86914, 0.42411, 0.32834),
    RGB(0.86698, 0.41764, 0.32159),
    RGB(0.8648, 0.41114, 0.31485),
    RGB(0.8626, 0.40461, 0.30813),
    RGB(0.86036, 0.39806, 0.30141),
    RGB(0.8581, 0.39148, 0.29471),
    RGB(0.85582, 0.38485, 0.28802),
    RGB(0.85351, 0.37821, 0.28133),
    RGB(0.85118, 0.37151, 0.27466),
    RGB(0.84883, 0.36479, 0.26799),
    RGB(0.84645, 0.35804, 0.26135),
    RGB(0.84405, 0.35123, 0.25471),
    RGB(0.84163, 0.34436, 0.24807),
    RGB(0.83918, 0.33747, 0.24143),
    RGB(0.83671, 0.3305, 0.23481),
    RGB(0.83422, 0.32349, 0.22818),
    RGB(0.8317, 0.31643, 0.22155),
    RGB(0.82916, 0.30929, 0.21492),
    RGB(0.82659, 0.30206, 0.20831),
    RGB(0.824, 0.29477, 0.20168),
    RGB(0.8214, 0.2874, 0.19508),
    RGB(0.81876, 0.27996, 0.18847),
    RGB(0.81611, 0.27239, 0.1818),
    RGB(0.81343, 0.26474, 0.17519),
    RGB(0.81074, 0.25697, 0.16854),
    RGB(0.80802, 0.24907, 0.16191),
    RGB(0.80528, 0.24103, 0.15521),
    RGB(0.80252, 0.23283, 0.1485),
    RGB(0.79974, 0.22446, 0.1418),
    RGB(0.79693, 0.21594, 0.13506),
    RGB(0.79411, 0.20718, 0.12827),
    RGB(0.79126, 0.19815, 0.12139),
    RGB(0.78839, 0.18889, 0.1145),
    RGB(0.78551, 0.1793, 0.10759),
    RGB(0.7826, 0.16938, 0.10056),
    RGB(0.77967, 0.15898, 0.093435),
    RGB(0.77672, 0.14808, 0.086208),
    RGB(0.77375, 0.13656, 0.078844),
    RGB(0.77076, 0.12429, 0.07141),
    RGB(0.76775, 0.11107, 0.063657),
    RGB(0.76473, 0.096422, 0.055653),
    RGB(0.76168, 0.080002, 0.047336),
    RGB(0.75862, 0.060659, 0.038618),
    RGB(0.75553, 0.03608, 0.029827),
    RGB(0.75243, 0.0084181, 0.021805),
], 64), :colorcet)

register_gradient_colors(:dimgray, sample_evenly([
    RGB(0.10767, 0.1077, 0.1077),
    RGB(0.11032, 0.11035, 0.11035),
    RGB(0.11295, 0.11298, 0.11297),
    RGB(0.11554, 0.11558, 0.11557),
    RGB(0.1182, 0.11824, 0.11823),
    RGB(0.12079, 0.12083, 0.12082),
    RGB(0.12344, 0.12348, 0.12347),
    RGB(0.12615, 0.12618, 0.12618),
    RGB(0.12879, 0.12882, 0.12881),
    RGB(0.13149, 0.13152, 0.13151),
    RGB(0.13418, 0.13421, 0.1342),
    RGB(0.13684, 0.13688, 0.13687),
    RGB(0.13951, 0.13955, 0.13954),
    RGB(0.14226, 0.1423, 0.14229),
    RGB(0.14499, 0.14503, 0.14502),
    RGB(0.1477, 0.14774, 0.14773),
    RGB(0.15042, 0.15046, 0.15045),
    RGB(0.15313, 0.15317, 0.15316),
    RGB(0.15591, 0.15595, 0.15594),
    RGB(0.15866, 0.1587, 0.15869),
    RGB(0.16142, 0.16147, 0.16145),
    RGB(0.16418, 0.16423, 0.16422),
    RGB(0.16695, 0.16699, 0.16698),
    RGB(0.16973, 0.16977, 0.16976),
    RGB(0.17248, 0.17253, 0.17252),
    RGB(0.17529, 0.17533, 0.17532),
    RGB(0.17811, 0.17815, 0.17814),
    RGB(0.18087, 0.18092, 0.1809),
    RGB(0.18369, 0.18374, 0.18372),
    RGB(0.18652, 0.18656, 0.18655),
    RGB(0.18934, 0.18939, 0.18938),
    RGB(0.19217, 0.19221, 0.1922),
    RGB(0.19502, 0.19506, 0.19505),
    RGB(0.19785, 0.1979, 0.19788),
    RGB(0.20068, 0.20073, 0.20072),
    RGB(0.20357, 0.20362, 0.20361),
    RGB(0.20645, 0.2065, 0.20649),
    RGB(0.20929, 0.20934, 0.20933),
    RGB(0.21219, 0.21224, 0.21222),
    RGB(0.21504, 0.21509, 0.21508),
    RGB(0.21795, 0.218, 0.21799),
    RGB(0.22086, 0.22091, 0.2209),
    RGB(0.22374, 0.22379, 0.22377),
    RGB(0.22666, 0.22671, 0.22669),
    RGB(0.22954, 0.2296, 0.22958),
    RGB(0.23248, 0.23253, 0.23252),
    RGB(0.23542, 0.23547, 0.23546),
    RGB(0.23832, 0.23838, 0.23836),
    RGB(0.24127, 0.24133, 0.24131),
    RGB(0.24419, 0.24425, 0.24424),
    RGB(0.24716, 0.24722, 0.2472),
    RGB(0.25009, 0.25015, 0.25014),
    RGB(0.25308, 0.25313, 0.25312),
    RGB(0.25603, 0.25608, 0.25607),
    RGB(0.25902, 0.25908, 0.25906),
    RGB(0.26198, 0.26204, 0.26203),
    RGB(0.26496, 0.26502, 0.265),
    RGB(0.26794, 0.268, 0.26798),
    RGB(0.27095, 0.27101, 0.271),
    RGB(0.27395, 0.27401, 0.274),
    RGB(0.27695, 0.27702, 0.277),
    RGB(0.27996, 0.28002, 0.28),
    RGB(0.28298, 0.28304, 0.28303),
    RGB(0.28598, 0.28604, 0.28603),
    RGB(0.28902, 0.28909, 0.28907),
    RGB(0.29205, 0.29212, 0.2921),
    RGB(0.29508, 0.29514, 0.29513),
    RGB(0.29812, 0.29818, 0.29817),
    RGB(0.30116, 0.30123, 0.30121),
    RGB(0.30422, 0.30429, 0.30427),
    RGB(0.30728, 0.30734, 0.30733),
    RGB(0.31036, 0.31043, 0.31041),
    RGB(0.31342, 0.31349, 0.31347),
    RGB(0.31649, 0.31656, 0.31654),
    RGB(0.31957, 0.31964, 0.31962),
    RGB(0.32266, 0.32273, 0.32271),
    RGB(0.32572, 0.3258, 0.32578),
    RGB(0.32883, 0.32891, 0.32889),
    RGB(0.33193, 0.332, 0.33198),
    RGB(0.33504, 0.33512, 0.3351),
    RGB(0.33813, 0.3382, 0.33818),
    RGB(0.34125, 0.34133, 0.34131),
    RGB(0.34436, 0.34444, 0.34442),
    RGB(0.3475, 0.34757, 0.34755),
    RGB(0.35063, 0.3507, 0.35068),
    RGB(0.35374, 0.35382, 0.3538),
    RGB(0.35689, 0.35697, 0.35695),
    RGB(0.36002, 0.3601, 0.36008),
    RGB(0.36317, 0.36325, 0.36323),
    RGB(0.36633, 0.36641, 0.36639),
    RGB(0.36948, 0.36956, 0.36954),
    RGB(0.37263, 0.37272, 0.3727),
    RGB(0.3758, 0.37589, 0.37587),
    RGB(0.37897, 0.37906, 0.37904),
    RGB(0.38214, 0.38223, 0.38221),
    RGB(0.38532, 0.3854, 0.38538),
    RGB(0.38852, 0.3886, 0.38858),
    RGB(0.3917, 0.39179, 0.39177),
    RGB(0.39489, 0.39498, 0.39496),
    RGB(0.3981, 0.39818, 0.39816),
    RGB(0.4013, 0.40138, 0.40136),
    RGB(0.40449, 0.40458, 0.40456),
    RGB(0.40771, 0.4078, 0.40778),
    RGB(0.41093, 0.41102, 0.411),
    RGB(0.41415, 0.41423, 0.41421),
    RGB(0.41738, 0.41747, 0.41744),
    RGB(0.4206, 0.42068, 0.42066),
    RGB(0.42383, 0.42392, 0.4239),
    RGB(0.42708, 0.42717, 0.42715),
    RGB(0.43031, 0.43041, 0.43038),
    RGB(0.43355, 0.43364, 0.43362),
    RGB(0.43681, 0.43691, 0.43688),
    RGB(0.44007, 0.44016, 0.44014),
    RGB(0.44333, 0.44342, 0.4434),
    RGB(0.44659, 0.44668, 0.44666),
    RGB(0.44986, 0.44995, 0.44993),
    RGB(0.45313, 0.45322, 0.4532),
    RGB(0.4564, 0.4565, 0.45647),
    RGB(0.45968, 0.45978, 0.45976),
    RGB(0.46296, 0.46306, 0.46303),
    RGB(0.46625, 0.46635, 0.46633),
    RGB(0.46956, 0.46966, 0.46963),
    RGB(0.47284, 0.47294, 0.47292),
    RGB(0.47615, 0.47625, 0.47623),
    RGB(0.47946, 0.47956, 0.47953),
    RGB(0.48276, 0.48286, 0.48284),
    RGB(0.48607, 0.48618, 0.48615),
    RGB(0.48939, 0.48949, 0.48947),
    RGB(0.49271, 0.49281, 0.49279),
    RGB(0.49603, 0.49614, 0.49611),
    RGB(0.49936, 0.49947, 0.49944),
    RGB(0.5027, 0.5028, 0.50278),
    RGB(0.50603, 0.50614, 0.50612),
    RGB(0.50938, 0.50949, 0.50946),
    RGB(0.51273, 0.51284, 0.51281),
    RGB(0.51607, 0.51618, 0.51615),
    RGB(0.51943, 0.51954, 0.51951),
    RGB(0.52279, 0.5229, 0.52287),
    RGB(0.52615, 0.52626, 0.52624),
    RGB(0.52952, 0.52963, 0.5296),
    RGB(0.53289, 0.533, 0.53297),
    RGB(0.53626, 0.53637, 0.53634),
    RGB(0.53963, 0.53974, 0.53971),
    RGB(0.54302, 0.54313, 0.5431),
    RGB(0.54641, 0.54652, 0.54649),
    RGB(0.54979, 0.5499, 0.54987),
    RGB(0.55317, 0.55329, 0.55326),
    RGB(0.55657, 0.55669, 0.55666),
    RGB(0.55998, 0.56009, 0.56007),
    RGB(0.56338, 0.5635, 0.56347),
    RGB(0.56679, 0.56691, 0.56688),
    RGB(0.57019, 0.57031, 0.57028),
    RGB(0.57361, 0.57373, 0.5737),
    RGB(0.57703, 0.57715, 0.57712),
    RGB(0.58045, 0.58057, 0.58054),
    RGB(0.58387, 0.58399, 0.58396),
    RGB(0.5873, 0.58742, 0.58739),
    RGB(0.59073, 0.59086, 0.59083),
    RGB(0.59417, 0.5943, 0.59427),
    RGB(0.59761, 0.59774, 0.59771),
    RGB(0.60106, 0.60118, 0.60115),
    RGB(0.60451, 0.60463, 0.6046),
    RGB(0.60796, 0.60809, 0.60806),
    RGB(0.61141, 0.61154, 0.61151),
    RGB(0.61486, 0.61499, 0.61496),
    RGB(0.61833, 0.61846, 0.61843),
    RGB(0.62179, 0.62192, 0.62189),
    RGB(0.62527, 0.62539, 0.62536),
    RGB(0.62874, 0.62887, 0.62884),
    RGB(0.63222, 0.63235, 0.63231),
    RGB(0.63569, 0.63583, 0.63579),
    RGB(0.63918, 0.63931, 0.63928),
    RGB(0.64267, 0.6428, 0.64276),
    RGB(0.64615, 0.64629, 0.64625),
    RGB(0.64965, 0.64978, 0.64975),
    RGB(0.65314, 0.65327, 0.65324),
    RGB(0.65665, 0.65678, 0.65675),
    RGB(0.66015, 0.66028, 0.66025),
    RGB(0.66366, 0.6638, 0.66376),
    RGB(0.66717, 0.6673, 0.66727),
    RGB(0.67069, 0.67082, 0.67079),
    RGB(0.6742, 0.67434, 0.6743),
    RGB(0.67772, 0.67786, 0.67783),
    RGB(0.68124, 0.68138, 0.68134),
    RGB(0.68477, 0.68491, 0.68488),
    RGB(0.68831, 0.68845, 0.68841),
    RGB(0.69184, 0.69198, 0.69195),
    RGB(0.69538, 0.69552, 0.69548),
    RGB(0.69891, 0.69906, 0.69902),
    RGB(0.70246, 0.7026, 0.70257),
    RGB(0.70601, 0.70616, 0.70612),
    RGB(0.70956, 0.70971, 0.70967),
    RGB(0.71311, 0.71326, 0.71322),
    RGB(0.71668, 0.71682, 0.71679),
    RGB(0.72023, 0.72038, 0.72034),
    RGB(0.7238, 0.72394, 0.72391),
    RGB(0.72736, 0.72751, 0.72748),
    RGB(0.73093, 0.73108, 0.73105),
    RGB(0.73451, 0.73466, 0.73463),
    RGB(0.73808, 0.73823, 0.7382),
    RGB(0.74167, 0.74182, 0.74178),
    RGB(0.74525, 0.7454, 0.74536),
    RGB(0.74884, 0.74899, 0.74895),
    RGB(0.75243, 0.75258, 0.75254),
    RGB(0.75602, 0.75618, 0.75614),
    RGB(0.75961, 0.75977, 0.75973),
    RGB(0.76322, 0.76337, 0.76333),
    RGB(0.76682, 0.76697, 0.76694),
    RGB(0.77043, 0.77058, 0.77055),
    RGB(0.77403, 0.77419, 0.77415),
    RGB(0.77765, 0.77781, 0.77777),
    RGB(0.78126, 0.78142, 0.78138),
    RGB(0.78489, 0.78504, 0.785),
    RGB(0.78851, 0.78867, 0.78863),
    RGB(0.79213, 0.79229, 0.79225),
    RGB(0.79576, 0.79592, 0.79588),
    RGB(0.79939, 0.79955, 0.79951),
    RGB(0.80302, 0.80318, 0.80314),
    RGB(0.80666, 0.80683, 0.80679),
    RGB(0.8103, 0.81046, 0.81042),
    RGB(0.81394, 0.81411, 0.81406),
    RGB(0.81759, 0.81775, 0.81771),
    RGB(0.82124, 0.82141, 0.82136),
    RGB(0.82489, 0.82506, 0.82501),
    RGB(0.82855, 0.82872, 0.82867),
    RGB(0.83221, 0.83237, 0.83233),
    RGB(0.83587, 0.83604, 0.83599),
    RGB(0.83953, 0.8397, 0.83966),
    RGB(0.8432, 0.84337, 0.84333),
    RGB(0.84687, 0.84704, 0.847),
    RGB(0.85054, 0.85071, 0.85067),
    RGB(0.85422, 0.85439, 0.85435),
    RGB(0.8579, 0.85807, 0.85803),
    RGB(0.86158, 0.86176, 0.86171),
    RGB(0.86527, 0.86544, 0.8654),
    RGB(0.86896, 0.86913, 0.86909),
    RGB(0.87265, 0.87282, 0.87278),
    RGB(0.87634, 0.87652, 0.87647),
    RGB(0.88004, 0.88022, 0.88017),
    RGB(0.88374, 0.88392, 0.88388),
    RGB(0.88744, 0.88762, 0.88758),
    RGB(0.89115, 0.89133, 0.89128),
    RGB(0.89486, 0.89504, 0.895),
    RGB(0.89857, 0.89875, 0.89871),
    RGB(0.90229, 0.90247, 0.90242),
    RGB(0.90601, 0.90619, 0.90614),
    RGB(0.90972, 0.90991, 0.90986),
    RGB(0.91345, 0.91363, 0.91359),
    RGB(0.91718, 0.91736, 0.91732),
    RGB(0.9209, 0.92108, 0.92104),
    RGB(0.92463, 0.92482, 0.92477),
    RGB(0.92837, 0.92855, 0.92851),
    RGB(0.9321, 0.93229, 0.93224),
    RGB(0.93585, 0.93604, 0.93599),
    RGB(0.93959, 0.93978, 0.93973),
    RGB(0.94334, 0.94353, 0.94348),
], 64), :colorcet)

register_gradient_colors(:fire, sample_evenly([
    RGB(0, 0, 0),
    RGB(0.027065, 2.143e-05, 0),
    RGB(0.052054, 7.4728e-05, 0),
    RGB(0.071511, 0.00013914, 0),
    RGB(0.08742, 0.0002088, 0),
    RGB(0.10109, 0.00028141, 0),
    RGB(0.11337, 0.000356, 2.4266e-17),
    RGB(0.12439, 0.00043134, 3.3615e-17),
    RGB(0.13463, 0.00050796, 2.1604e-17),
    RGB(0.14411, 0.0005856, 0),
    RGB(0.15292, 0.00070304, 0),
    RGB(0.16073, 0.0013432, 0),
    RGB(0.16871, 0.0014516, 0),
    RGB(0.17657, 0.0012408, 0),
    RGB(0.18364, 0.0015336, 0),
    RGB(0.19052, 0.0017515, 0),
    RGB(0.19751, 0.0015146, 0),
    RGB(0.20401, 0.0015249, 0),
    RGB(0.20994, 0.0019639, 0),
    RGB(0.21605, 0.002031, 0),
    RGB(0.22215, 0.0017559, 0),
    RGB(0.22808, 0.001546, 1.8755e-05),
    RGB(0.23378, 0.0016315, 3.5012e-05),
    RGB(0.23955, 0.0017194, 3.3352e-05),
    RGB(0.24531, 0.0018097, 1.8559e-05),
    RGB(0.25113, 0.0019038, 1.9139e-05),
    RGB(0.25694, 0.0020015, 3.5308e-05),
    RGB(0.26278, 0.0021017, 3.2613e-05),
    RGB(0.26864, 0.0022048, 2.0338e-05),
    RGB(0.27451, 0.0023119, 2.2453e-05),
    RGB(0.28041, 0.0024227, 3.6003e-05),
    RGB(0.28633, 0.0025363, 2.9817e-05),
    RGB(0.29229, 0.0026532, 1.9559e-05),
    RGB(0.29824, 0.0027747, 2.7666e-05),
    RGB(0.30423, 0.0028999, 3.5752e-05),
    RGB(0.31026, 0.0030279, 2.3231e-05),
    RGB(0.31628, 0.0031599, 1.2902e-05),
    RGB(0.32232, 0.0032974, 3.2915e-05),
    RGB(0.32838, 0.0034379, 3.2803e-05),
    RGB(0.33447, 0.0035819, 2.0757e-05),
    RGB(0.34057, 0.003731, 2.3831e-05),
    RGB(0.34668, 0.0038848, 3.502e-05),
    RGB(0.35283, 0.0040418, 2.4468e-05),
    RGB(0.35897, 0.0042032, 1.1444e-05),
    RGB(0.36515, 0.0043708, 3.2793e-05),
    RGB(0.37134, 0.0045418, 3.012e-05),
    RGB(0.37756, 0.0047169, 1.4846e-05),
    RGB(0.38379, 0.0048986, 2.796e-05),
    RGB(0.39003, 0.0050848, 3.2782e-05),
    RGB(0.3963, 0.0052751, 1.9244e-05),
    RGB(0.40258, 0.0054715, 2.2667e-05),
    RGB(0.40888, 0.0056736, 3.3223e-05),
    RGB(0.41519, 0.0058798, 2.159e-05),
    RGB(0.42152, 0.0060922, 1.8214e-05),
    RGB(0.42788, 0.0063116, 3.2525e-05),
    RGB(0.43424, 0.0065353, 2.2247e-05),
    RGB(0.44062, 0.006765, 1.5852e-05),
    RGB(0.44702, 0.0070024, 3.1769e-05),
    RGB(0.45344, 0.0072442, 2.1245e-05),
    RGB(0.45987, 0.0074929, 1.5726e-05),
    RGB(0.46631, 0.0077499, 3.0976e-05),
    RGB(0.47277, 0.0080108, 1.8722e-05),
    RGB(0.47926, 0.0082789, 1.9285e-05),
    RGB(0.48574, 0.0085553, 3.0063e-05),
    RGB(0.49225, 0.0088392, 1.4313e-05),
    RGB(0.49878, 0.0091356, 2.3404e-05),
    RGB(0.50531, 0.0094374, 2.8099e-05),
    RGB(0.51187, 0.0097365, 6.4695e-06),
    RGB(0.51844, 0.010039, 2.5791e-05),
    RGB(0.52501, 0.010354, 2.4393e-05),
    RGB(0.53162, 0.010689, 1.6037e-05),
    RGB(0.53825, 0.011031, 2.7295e-05),
    RGB(0.54489, 0.011393, 1.5848e-05),
    RGB(0.55154, 0.011789, 2.3111e-05),
    RGB(0.55818, 0.012159, 2.5416e-05),
    RGB(0.56485, 0.012508, 1.5064e-05),
    RGB(0.57154, 0.012881, 2.541e-05),
    RGB(0.57823, 0.013283, 1.6166e-05),
    RGB(0.58494, 0.013701, 2.263e-05),
    RGB(0.59166, 0.014122, 2.3316e-05),
    RGB(0.59839, 0.014551, 1.9432e-05),
    RGB(0.60514, 0.014994, 2.4323e-05),
    RGB(0.6119, 0.01545, 1.3929e-05),
    RGB(0.61868, 0.01592, 2.1615e-05),
    RGB(0.62546, 0.016401, 1.5846e-05),
    RGB(0.63226, 0.016897, 2.0838e-05),
    RGB(0.63907, 0.017407, 1.9549e-05),
    RGB(0.64589, 0.017931, 2.0961e-05),
    RGB(0.65273, 0.018471, 2.0737e-05),
    RGB(0.65958, 0.019026, 2.0621e-05),
    RGB(0.66644, 0.019598, 2.0675e-05),
    RGB(0.67332, 0.020187, 2.0301e-05),
    RGB(0.68019, 0.020793, 2.0029e-05),
    RGB(0.68709, 0.021418, 2.0088e-05),
    RGB(0.69399, 0.022062, 1.9102e-05),
    RGB(0.70092, 0.022727, 1.9662e-05),
    RGB(0.70784, 0.023412, 1.7757e-05),
    RGB(0.71478, 0.024121, 1.8236e-05),
    RGB(0.72173, 0.024852, 1.4944e-05),
    RGB(0.7287, 0.025608, 2.0245e-06),
    RGB(0.73567, 0.02639, 1.5013e-07),
    RGB(0.74266, 0.027199, 0),
    RGB(0.74964, 0.028038, 0),
    RGB(0.75665, 0.028906, 0),
    RGB(0.76365, 0.029806, 0),
    RGB(0.77068, 0.030743, 0),
    RGB(0.77771, 0.031711, 0),
    RGB(0.78474, 0.032732, 0),
    RGB(0.79179, 0.033741, 0),
    RGB(0.79886, 0.034936, 0),
    RGB(0.80593, 0.036031, 0),
    RGB(0.81299, 0.03723, 0),
    RGB(0.82007, 0.038493, 0),
    RGB(0.82715, 0.039819, 0),
    RGB(0.83423, 0.041236, 0),
    RGB(0.84131, 0.042647, 0),
    RGB(0.84838, 0.044235, 0),
    RGB(0.85545, 0.045857, 0),
    RGB(0.86252, 0.047645, 0),
    RGB(0.86958, 0.049578, 0),
    RGB(0.87661, 0.051541, 0),
    RGB(0.88365, 0.053735, 0),
    RGB(0.89064, 0.056168, 0),
    RGB(0.89761, 0.058852, 0),
    RGB(0.90451, 0.061777, 0),
    RGB(0.91131, 0.065281, 0),
    RGB(0.91796, 0.069448, 0),
    RGB(0.92445, 0.074684, 0),
    RGB(0.93061, 0.08131, 0),
    RGB(0.93648, 0.088878, 0),
    RGB(0.94205, 0.097336, 0),
    RGB(0.9473, 0.10665, 0),
    RGB(0.9522, 0.1166, 0),
    RGB(0.95674, 0.12716, 0),
    RGB(0.96094, 0.13824, 0),
    RGB(0.96479, 0.14963, 0),
    RGB(0.96829, 0.16128, 0),
    RGB(0.97147, 0.17303, 0),
    RGB(0.97436, 0.18489, 0),
    RGB(0.97698, 0.19672, 0),
    RGB(0.97934, 0.20846, 0),
    RGB(0.98148, 0.22013, 0),
    RGB(0.9834, 0.23167, 0),
    RGB(0.98515, 0.24301, 0),
    RGB(0.98672, 0.25425, 0),
    RGB(0.98815, 0.26525, 0),
    RGB(0.98944, 0.27614, 0),
    RGB(0.99061, 0.28679, 0),
    RGB(0.99167, 0.29731, 0),
    RGB(0.99263, 0.30764, 0),
    RGB(0.9935, 0.31781, 0),
    RGB(0.99428, 0.3278, 0),
    RGB(0.995, 0.33764, 0),
    RGB(0.99564, 0.34735, 0),
    RGB(0.99623, 0.35689, 0),
    RGB(0.99675, 0.3663, 0),
    RGB(0.99722, 0.37556, 0),
    RGB(0.99765, 0.38471, 0),
    RGB(0.99803, 0.39374, 0),
    RGB(0.99836, 0.40265, 0),
    RGB(0.99866, 0.41145, 0),
    RGB(0.99892, 0.42015, 0),
    RGB(0.99915, 0.42874, 0),
    RGB(0.99935, 0.43724, 0),
    RGB(0.99952, 0.44563, 0),
    RGB(0.99966, 0.45395, 0),
    RGB(0.99977, 0.46217, 0),
    RGB(0.99986, 0.47032, 0),
    RGB(0.99993, 0.47838, 0),
    RGB(0.99997, 0.48638, 0),
    RGB(1, 0.4943, 0),
    RGB(1, 0.50214, 0),
    RGB(1, 0.50991, 1.2756e-05),
    RGB(1, 0.51761, 4.5388e-05),
    RGB(1, 0.52523, 9.6977e-05),
    RGB(1, 0.5328, 0.00016858),
    RGB(1, 0.54028, 0.0002582),
    RGB(1, 0.54771, 0.00036528),
    RGB(1, 0.55508, 0.00049276),
    RGB(1, 0.5624, 0.00063955),
    RGB(1, 0.56965, 0.00080443),
    RGB(1, 0.57687, 0.00098902),
    RGB(1, 0.58402, 0.0011943),
    RGB(1, 0.59113, 0.0014189),
    RGB(1, 0.59819, 0.0016626),
    RGB(1, 0.60521, 0.0019281),
    RGB(1, 0.61219, 0.0022145),
    RGB(1, 0.61914, 0.0025213),
    RGB(1, 0.62603, 0.0028496),
    RGB(1, 0.6329, 0.0032006),
    RGB(1, 0.63972, 0.0035741),
    RGB(1, 0.64651, 0.0039701),
    RGB(1, 0.65327, 0.0043898),
    RGB(1, 0.66, 0.0048341),
    RGB(1, 0.66669, 0.005303),
    RGB(1, 0.67336, 0.0057969),
    RGB(1, 0.67999, 0.006317),
    RGB(1, 0.68661, 0.0068648),
    RGB(1, 0.69319, 0.0074406),
    RGB(1, 0.69974, 0.0080433),
    RGB(1, 0.70628, 0.0086756),
    RGB(1, 0.71278, 0.0093486),
    RGB(1, 0.71927, 0.010023),
    RGB(1, 0.72573, 0.010724),
    RGB(1, 0.73217, 0.011565),
    RGB(1, 0.73859, 0.012339),
    RGB(1, 0.74499, 0.01316),
    RGB(1, 0.75137, 0.014042),
    RGB(1, 0.75772, 0.014955),
    RGB(1, 0.76406, 0.015913),
    RGB(1, 0.77039, 0.016915),
    RGB(1, 0.77669, 0.017964),
    RGB(1, 0.78298, 0.019062),
    RGB(1, 0.78925, 0.020212),
    RGB(1, 0.7955, 0.021417),
    RGB(1, 0.80174, 0.02268),
    RGB(1, 0.80797, 0.024005),
    RGB(1, 0.81418, 0.025396),
    RGB(1, 0.82038, 0.026858),
    RGB(1, 0.82656, 0.028394),
    RGB(1, 0.83273, 0.030013),
    RGB(1, 0.83889, 0.031717),
    RGB(1, 0.84503, 0.03348),
    RGB(1, 0.85116, 0.035488),
    RGB(1, 0.85728, 0.037452),
    RGB(1, 0.8634, 0.039592),
    RGB(1, 0.86949, 0.041898),
    RGB(1, 0.87557, 0.044392),
    RGB(1, 0.88165, 0.046958),
    RGB(1, 0.88771, 0.04977),
    RGB(1, 0.89376, 0.052828),
    RGB(1, 0.8998, 0.056209),
    RGB(1, 0.90584, 0.059919),
    RGB(1, 0.91185, 0.063925),
    RGB(1, 0.91783, 0.068579),
    RGB(1, 0.92384, 0.073948),
    RGB(1, 0.92981, 0.080899),
    RGB(1, 0.93576, 0.090648),
    RGB(1, 0.94166, 0.10377),
    RGB(1, 0.94752, 0.12051),
    RGB(1, 0.9533, 0.14149),
    RGB(1, 0.959, 0.1672),
    RGB(1, 0.96456, 0.19823),
    RGB(1, 0.96995, 0.23514),
    RGB(1, 0.9751, 0.2786),
    RGB(1, 0.97992, 0.32883),
    RGB(1, 0.98432, 0.38571),
    RGB(1, 0.9882, 0.44866),
    RGB(1, 0.9915, 0.51653),
    RGB(1, 0.99417, 0.58754),
    RGB(1, 0.99625, 0.65985),
    RGB(1, 0.99778, 0.73194),
    RGB(1, 0.99885, 0.80259),
    RGB(1, 0.99953, 0.87115),
    RGB(1, 0.99989, 0.93683),
    RGB(1, 1, 1),
], 64), :colorcet)

register_gradient_colors(:gray, sample_evenly([
    RGB(0, 0, 0),
    RGB(0.0055606, 0.0055631, 0.0055625),
    RGB(0.011212, 0.011219, 0.011217),
    RGB(0.016877, 0.016885, 0.016883),
    RGB(0.022438, 0.022448, 0.022445),
    RGB(0.027998, 0.028011, 0.028008),
    RGB(0.03354, 0.033554, 0.033551),
    RGB(0.039316, 0.039333, 0.039329),
    RGB(0.0447, 0.044719, 0.044714),
    RGB(0.049695, 0.049713, 0.049709),
    RGB(0.054322, 0.054343, 0.054338),
    RGB(0.058797, 0.058821, 0.058815),
    RGB(0.063041, 0.063062, 0.063057),
    RGB(0.066996, 0.067019, 0.067014),
    RGB(0.070827, 0.070853, 0.070846),
    RGB(0.074487, 0.074511, 0.074505),
    RGB(0.077967, 0.077992, 0.077986),
    RGB(0.081449, 0.081477, 0.08147),
    RGB(0.084728, 0.084752, 0.084746),
    RGB(0.087913, 0.087939, 0.087933),
    RGB(0.091003, 0.091031, 0.091024),
    RGB(0.094004, 0.094034, 0.094027),
    RGB(0.096981, 0.097012, 0.097005),
    RGB(0.10004, 0.10007, 0.10006),
    RGB(0.10311, 0.10314, 0.10314),
    RGB(0.10618, 0.10621, 0.1062),
    RGB(0.10924, 0.10928, 0.10927),
    RGB(0.11232, 0.11235, 0.11234),
    RGB(0.11538, 0.11541, 0.1154),
    RGB(0.11852, 0.11855, 0.11854),
    RGB(0.12157, 0.1216, 0.12159),
    RGB(0.12471, 0.12474, 0.12473),
    RGB(0.12787, 0.1279, 0.12789),
    RGB(0.13102, 0.13105, 0.13105),
    RGB(0.13418, 0.13421, 0.1342),
    RGB(0.13734, 0.13738, 0.13737),
    RGB(0.14051, 0.14055, 0.14054),
    RGB(0.1437, 0.14373, 0.14372),
    RGB(0.14687, 0.14691, 0.1469),
    RGB(0.15011, 0.15015, 0.15014),
    RGB(0.15329, 0.15333, 0.15332),
    RGB(0.15656, 0.15659, 0.15659),
    RGB(0.15975, 0.15979, 0.15978),
    RGB(0.16304, 0.16308, 0.16307),
    RGB(0.16628, 0.16632, 0.16631),
    RGB(0.16957, 0.16961, 0.1696),
    RGB(0.17281, 0.17286, 0.17285),
    RGB(0.17608, 0.17612, 0.17611),
    RGB(0.1794, 0.17944, 0.17943),
    RGB(0.18269, 0.18273, 0.18272),
    RGB(0.18604, 0.18608, 0.18607),
    RGB(0.18934, 0.18939, 0.18938),
    RGB(0.19267, 0.19272, 0.19271),
    RGB(0.19602, 0.19607, 0.19606),
    RGB(0.19934, 0.19939, 0.19938),
    RGB(0.20271, 0.20276, 0.20275),
    RGB(0.20611, 0.20616, 0.20615),
    RGB(0.20946, 0.20951, 0.2095),
    RGB(0.21284, 0.21289, 0.21288),
    RGB(0.21626, 0.21632, 0.2163),
    RGB(0.21965, 0.2197, 0.21969),
    RGB(0.22307, 0.22312, 0.22311),
    RGB(0.22649, 0.22654, 0.22653),
    RGB(0.22988, 0.22994, 0.22992),
    RGB(0.23332, 0.23337, 0.23336),
    RGB(0.2368, 0.23685, 0.23684),
    RGB(0.24022, 0.24027, 0.24026),
    RGB(0.24368, 0.24373, 0.24372),
    RGB(0.24716, 0.24722, 0.2472),
    RGB(0.25063, 0.25069, 0.25067),
    RGB(0.25412, 0.25418, 0.25417),
    RGB(0.2576, 0.25766, 0.25765),
    RGB(0.26111, 0.26117, 0.26115),
    RGB(0.26461, 0.26467, 0.26465),
    RGB(0.26812, 0.26818, 0.26817),
    RGB(0.27164, 0.2717, 0.27168),
    RGB(0.27518, 0.27525, 0.27523),
    RGB(0.27872, 0.27879, 0.27877),
    RGB(0.28227, 0.28234, 0.28232),
    RGB(0.2858, 0.28587, 0.28585),
    RGB(0.28938, 0.28945, 0.28943),
    RGB(0.29294, 0.293, 0.29298),
    RGB(0.29652, 0.29659, 0.29657),
    RGB(0.30009, 0.30016, 0.30014),
    RGB(0.30368, 0.30375, 0.30373),
    RGB(0.30728, 0.30734, 0.30733),
    RGB(0.3109, 0.31096, 0.31095),
    RGB(0.31449, 0.31456, 0.31454),
    RGB(0.31811, 0.31819, 0.31817),
    RGB(0.32173, 0.32181, 0.32179),
    RGB(0.32536, 0.32543, 0.32542),
    RGB(0.32902, 0.32909, 0.32907),
    RGB(0.33267, 0.33274, 0.33272),
    RGB(0.3363, 0.33638, 0.33636),
    RGB(0.33997, 0.34005, 0.34003),
    RGB(0.34363, 0.3437, 0.34369),
    RGB(0.34731, 0.34739, 0.34737),
    RGB(0.35099, 0.35107, 0.35105),
    RGB(0.35468, 0.35476, 0.35474),
    RGB(0.35836, 0.35844, 0.35842),
    RGB(0.36207, 0.36214, 0.36212),
    RGB(0.36577, 0.36585, 0.36583),
    RGB(0.36948, 0.36956, 0.36954),
    RGB(0.37319, 0.37328, 0.37326),
    RGB(0.37693, 0.37701, 0.37699),
    RGB(0.38066, 0.38074, 0.38072),
    RGB(0.38439, 0.38447, 0.38445),
    RGB(0.38814, 0.38822, 0.3882),
    RGB(0.39189, 0.39197, 0.39195),
    RGB(0.39565, 0.39574, 0.39572),
    RGB(0.3994, 0.39949, 0.39946),
    RGB(0.40318, 0.40327, 0.40325),
    RGB(0.40695, 0.40704, 0.40702),
    RGB(0.41074, 0.41083, 0.41081),
    RGB(0.41452, 0.41461, 0.41459),
    RGB(0.41831, 0.4184, 0.41838),
    RGB(0.42211, 0.4222, 0.42218),
    RGB(0.42592, 0.42601, 0.42599),
    RGB(0.42974, 0.42983, 0.42981),
    RGB(0.43355, 0.43364, 0.43362),
    RGB(0.43739, 0.43748, 0.43746),
    RGB(0.44121, 0.44131, 0.44128),
    RGB(0.44505, 0.44515, 0.44512),
    RGB(0.4489, 0.449, 0.44897),
    RGB(0.45275, 0.45284, 0.45282),
    RGB(0.45659, 0.45669, 0.45667),
    RGB(0.46045, 0.46055, 0.46052),
    RGB(0.46433, 0.46443, 0.46441),
    RGB(0.46819, 0.46829, 0.46826),
    RGB(0.47208, 0.47218, 0.47215),
    RGB(0.47596, 0.47606, 0.47603),
    RGB(0.47985, 0.47995, 0.47992),
    RGB(0.48373, 0.48383, 0.48381),
    RGB(0.48764, 0.48775, 0.48772),
    RGB(0.49155, 0.49165, 0.49163),
    RGB(0.49545, 0.49556, 0.49553),
    RGB(0.49936, 0.49947, 0.49944),
    RGB(0.50329, 0.50339, 0.50337),
    RGB(0.50722, 0.50733, 0.5073),
    RGB(0.51115, 0.51126, 0.51123),
    RGB(0.51509, 0.5152, 0.51517),
    RGB(0.51904, 0.51915, 0.51912),
    RGB(0.52299, 0.5231, 0.52307),
    RGB(0.52695, 0.52706, 0.52703),
    RGB(0.5309, 0.53101, 0.53099),
    RGB(0.53487, 0.53498, 0.53495),
    RGB(0.53884, 0.53895, 0.53893),
    RGB(0.54282, 0.54293, 0.5429),
    RGB(0.5468, 0.54691, 0.54688),
    RGB(0.55078, 0.5509, 0.55087),
    RGB(0.55478, 0.55489, 0.55486),
    RGB(0.55877, 0.55888, 0.55886),
    RGB(0.56278, 0.5629, 0.56287),
    RGB(0.56679, 0.56691, 0.56688),
    RGB(0.57079, 0.57091, 0.57088),
    RGB(0.57481, 0.57493, 0.5749),
    RGB(0.57884, 0.57896, 0.57893),
    RGB(0.58286, 0.58298, 0.58295),
    RGB(0.5869, 0.58702, 0.58699),
    RGB(0.59094, 0.59106, 0.59103),
    RGB(0.59498, 0.5951, 0.59507),
    RGB(0.59903, 0.59916, 0.59913),
    RGB(0.60309, 0.60321, 0.60318),
    RGB(0.60715, 0.60728, 0.60724),
    RGB(0.61121, 0.61134, 0.61131),
    RGB(0.61527, 0.6154, 0.61537),
    RGB(0.61936, 0.61948, 0.61945),
    RGB(0.62343, 0.62356, 0.62353),
    RGB(0.62751, 0.62764, 0.62761),
    RGB(0.6316, 0.63173, 0.6317),
    RGB(0.63569, 0.63583, 0.63579),
    RGB(0.6398, 0.63993, 0.63989),
    RGB(0.64389, 0.64402, 0.64399),
    RGB(0.648, 0.64813, 0.6481),
    RGB(0.65212, 0.65225, 0.65222),
    RGB(0.65624, 0.65637, 0.65634),
    RGB(0.66035, 0.66049, 0.66045),
    RGB(0.66448, 0.66461, 0.66458),
    RGB(0.66862, 0.66875, 0.66872),
    RGB(0.67275, 0.67289, 0.67286),
    RGB(0.6769, 0.67703, 0.677),
    RGB(0.68103, 0.68117, 0.68114),
    RGB(0.68519, 0.68533, 0.6853),
    RGB(0.68935, 0.68949, 0.68945),
    RGB(0.6935, 0.69364, 0.69361),
    RGB(0.69766, 0.69781, 0.69777),
    RGB(0.70183, 0.70197, 0.70194),
    RGB(0.70601, 0.70616, 0.70612),
    RGB(0.71019, 0.71033, 0.7103),
    RGB(0.71437, 0.71451, 0.71448),
    RGB(0.71855, 0.7187, 0.71867),
    RGB(0.72274, 0.72289, 0.72286),
    RGB(0.72694, 0.72709, 0.72706),
    RGB(0.73114, 0.73129, 0.73126),
    RGB(0.73535, 0.7355, 0.73546),
    RGB(0.73957, 0.73972, 0.73968),
    RGB(0.74378, 0.74393, 0.74389),
    RGB(0.748, 0.74815, 0.74811),
    RGB(0.75222, 0.75237, 0.75233),
    RGB(0.75644, 0.7566, 0.75656),
    RGB(0.76068, 0.76083, 0.76079),
    RGB(0.76492, 0.76507, 0.76503),
    RGB(0.76915, 0.76931, 0.76927),
    RGB(0.7734, 0.77355, 0.77351),
    RGB(0.77765, 0.77781, 0.77777),
    RGB(0.78191, 0.78206, 0.78202),
    RGB(0.78616, 0.78632, 0.78628),
    RGB(0.79042, 0.79058, 0.79054),
    RGB(0.79469, 0.79485, 0.79481),
    RGB(0.79896, 0.79913, 0.79909),
    RGB(0.80323, 0.8034, 0.80336),
    RGB(0.80752, 0.80768, 0.80764),
    RGB(0.8118, 0.81196, 0.81192),
    RGB(0.81609, 0.81626, 0.81621),
    RGB(0.82038, 0.82054, 0.8205),
    RGB(0.82467, 0.82484, 0.8248),
    RGB(0.82898, 0.82915, 0.82911),
    RGB(0.83328, 0.83345, 0.83341),
    RGB(0.83759, 0.83776, 0.83772),
    RGB(0.84191, 0.84208, 0.84204),
    RGB(0.84622, 0.84639, 0.84635),
    RGB(0.85054, 0.85071, 0.85067),
    RGB(0.85487, 0.85504, 0.855),
    RGB(0.8592, 0.85937, 0.85933),
    RGB(0.86354, 0.86371, 0.86367),
    RGB(0.86787, 0.86805, 0.86801),
    RGB(0.87222, 0.87239, 0.87235),
    RGB(0.87656, 0.87673, 0.87669),
    RGB(0.88091, 0.88109, 0.88104),
    RGB(0.88527, 0.88544, 0.8854),
    RGB(0.88962, 0.8898, 0.88976),
    RGB(0.89399, 0.89417, 0.89412),
    RGB(0.89835, 0.89853, 0.89849),
    RGB(0.90272, 0.90291, 0.90286),
    RGB(0.9071, 0.90728, 0.90724),
    RGB(0.91148, 0.91166, 0.91161),
    RGB(0.91585, 0.91604, 0.91599),
    RGB(0.92024, 0.92043, 0.92038),
    RGB(0.92463, 0.92482, 0.92477),
    RGB(0.92903, 0.92921, 0.92917),
    RGB(0.93342, 0.93361, 0.93356),
    RGB(0.93783, 0.93802, 0.93797),
    RGB(0.94224, 0.94243, 0.94238),
    RGB(0.94664, 0.94683, 0.94679),
    RGB(0.95106, 0.95125, 0.9512),
    RGB(0.95548, 0.95567, 0.95562),
    RGB(0.9599, 0.96009, 0.96004),
    RGB(0.96432, 0.96451, 0.96446),
    RGB(0.96875, 0.96894, 0.9689),
    RGB(0.97318, 0.97338, 0.97333),
    RGB(0.97762, 0.97781, 0.97777),
    RGB(0.98206, 0.98226, 0.98221),
    RGB(0.98651, 0.9867, 0.98666),
    RGB(0.99095, 0.99115, 0.9911),
    RGB(0.9954, 0.9956, 0.99555),
    RGB(0.99986, 1, 1),
], 64), :colorcet)

register_gradient_colors(:gwv, sample_evenly([
    RGB(0.22157, 0.59107, 0.055073),
    RGB(0.22965, 0.59389, 0.068993),
    RGB(0.2376, 0.59671, 0.081291),
    RGB(0.24531, 0.59952, 0.092565),
    RGB(0.25292, 0.60233, 0.10315),
    RGB(0.26037, 0.60514, 0.11313),
    RGB(0.26768, 0.60796, 0.12253),
    RGB(0.27491, 0.61076, 0.13168),
    RGB(0.28202, 0.61356, 0.14045),
    RGB(0.28902, 0.61637, 0.14894),
    RGB(0.29592, 0.61918, 0.15721),
    RGB(0.30273, 0.62197, 0.16528),
    RGB(0.3095, 0.62478, 0.1732),
    RGB(0.31616, 0.62758, 0.18095),
    RGB(0.32276, 0.63038, 0.18859),
    RGB(0.32929, 0.63317, 0.1961),
    RGB(0.33575, 0.63597, 0.20349),
    RGB(0.34216, 0.63876, 0.21079),
    RGB(0.34851, 0.64155, 0.21802),
    RGB(0.35482, 0.64434, 0.22514),
    RGB(0.36105, 0.64714, 0.23224),
    RGB(0.36726, 0.64993, 0.23924),
    RGB(0.37343, 0.65271, 0.24619),
    RGB(0.37954, 0.6555, 0.25311),
    RGB(0.38562, 0.65828, 0.25997),
    RGB(0.39167, 0.66106, 0.26678),
    RGB(0.39767, 0.66385, 0.27357),
    RGB(0.40364, 0.66662, 0.28029),
    RGB(0.40958, 0.66941, 0.287),
    RGB(0.41548, 0.67219, 0.29368),
    RGB(0.42135, 0.67496, 0.30034),
    RGB(0.42721, 0.67774, 0.30697),
    RGB(0.43302, 0.68051, 0.31358),
    RGB(0.43881, 0.68328, 0.32017),
    RGB(0.44459, 0.68606, 0.32672),
    RGB(0.45032, 0.68883, 0.33328),
    RGB(0.45604, 0.6916, 0.33982),
    RGB(0.46174, 0.69436, 0.34632),
    RGB(0.46742, 0.69713, 0.35283),
    RGB(0.47307, 0.6999, 0.35932),
    RGB(0.47871, 0.70267, 0.3658),
    RGB(0.48432, 0.70543, 0.37227),
    RGB(0.48992, 0.70819, 0.37873),
    RGB(0.49551, 0.71096, 0.38518),
    RGB(0.50108, 0.71371, 0.39164),
    RGB(0.50662, 0.71648, 0.39808),
    RGB(0.51215, 0.71923, 0.40451),
    RGB(0.51768, 0.72199, 0.41095),
    RGB(0.52318, 0.72475, 0.41738),
    RGB(0.52867, 0.7275, 0.42379),
    RGB(0.53414, 0.73026, 0.43022),
    RGB(0.5396, 0.73301, 0.43664),
    RGB(0.54506, 0.73576, 0.44305),
    RGB(0.5505, 0.73851, 0.44946),
    RGB(0.55592, 0.74126, 0.45587),
    RGB(0.56134, 0.74401, 0.46228),
    RGB(0.56675, 0.74676, 0.4687),
    RGB(0.57214, 0.7495, 0.47512),
    RGB(0.57752, 0.75225, 0.48152),
    RGB(0.58289, 0.755, 0.48794),
    RGB(0.58826, 0.75775, 0.49435),
    RGB(0.59362, 0.76049, 0.50076),
    RGB(0.59896, 0.76323, 0.50717),
    RGB(0.60431, 0.76597, 0.5136),
    RGB(0.60963, 0.76871, 0.52001),
    RGB(0.61495, 0.77146, 0.52644),
    RGB(0.62027, 0.77419, 0.53286),
    RGB(0.62557, 0.77693, 0.53928),
    RGB(0.63088, 0.77967, 0.54572),
    RGB(0.63617, 0.7824, 0.55215),
    RGB(0.64145, 0.78514, 0.55858),
    RGB(0.64673, 0.78787, 0.56502),
    RGB(0.652, 0.79061, 0.57147),
    RGB(0.65727, 0.79334, 0.57791),
    RGB(0.66253, 0.79607, 0.58437),
    RGB(0.66778, 0.7988, 0.59082),
    RGB(0.67303, 0.80153, 0.59729),
    RGB(0.67827, 0.80426, 0.60376),
    RGB(0.68351, 0.80699, 0.61022),
    RGB(0.68875, 0.80972, 0.6167),
    RGB(0.69397, 0.81244, 0.62318),
    RGB(0.69919, 0.81517, 0.62965),
    RGB(0.70441, 0.8179, 0.63615),
    RGB(0.70963, 0.82062, 0.64264),
    RGB(0.71483, 0.82335, 0.64914),
    RGB(0.72004, 0.82607, 0.65564),
    RGB(0.72525, 0.82879, 0.66215),
    RGB(0.73044, 0.83152, 0.66866),
    RGB(0.73563, 0.83424, 0.67518),
    RGB(0.74082, 0.83696, 0.6817),
    RGB(0.74601, 0.83968, 0.68824),
    RGB(0.7512, 0.84239, 0.69477),
    RGB(0.75637, 0.84511, 0.70131),
    RGB(0.76155, 0.84782, 0.70786),
    RGB(0.76672, 0.85054, 0.71441),
    RGB(0.77189, 0.85326, 0.72097),
    RGB(0.77706, 0.85597, 0.72754),
    RGB(0.78223, 0.85869, 0.73411),
    RGB(0.78739, 0.8614, 0.74068),
    RGB(0.79255, 0.86412, 0.74727),
    RGB(0.7977, 0.86682, 0.75386),
    RGB(0.80286, 0.86954, 0.76045),
    RGB(0.80801, 0.87225, 0.76705),
    RGB(0.81316, 0.87496, 0.77366),
    RGB(0.81831, 0.87767, 0.78027),
    RGB(0.82345, 0.88037, 0.7869),
    RGB(0.8286, 0.88308, 0.79353),
    RGB(0.83375, 0.88579, 0.80016),
    RGB(0.83888, 0.88849, 0.8068),
    RGB(0.84401, 0.89118, 0.81343),
    RGB(0.84914, 0.89385, 0.82007),
    RGB(0.85424, 0.89651, 0.82671),
    RGB(0.85933, 0.89914, 0.83333),
    RGB(0.8644, 0.90172, 0.83995),
    RGB(0.86942, 0.90426, 0.84652),
    RGB(0.8744, 0.90673, 0.85306),
    RGB(0.87932, 0.90912, 0.85955),
    RGB(0.88415, 0.91139, 0.86596),
    RGB(0.88888, 0.91352, 0.87228),
    RGB(0.89348, 0.91548, 0.87846),
    RGB(0.89792, 0.91724, 0.8845),
    RGB(0.90218, 0.91875, 0.89034),
    RGB(0.90621, 0.92, 0.89596),
    RGB(0.90998, 0.92093, 0.90131),
    RGB(0.91347, 0.92152, 0.90637),
    RGB(0.91664, 0.92174, 0.91109),
    RGB(0.91948, 0.92157, 0.91546),
    RGB(0.92195, 0.92098, 0.91944),
    RGB(0.92406, 0.91999, 0.92303),
    RGB(0.92579, 0.91859, 0.92621),
    RGB(0.92715, 0.91679, 0.92898),
    RGB(0.92815, 0.9146, 0.93137),
    RGB(0.92881, 0.91206, 0.93337),
    RGB(0.92915, 0.90919, 0.93503),
    RGB(0.9292, 0.90603, 0.93636),
    RGB(0.92898, 0.9026, 0.9374),
    RGB(0.92854, 0.89895, 0.93818),
    RGB(0.9279, 0.89512, 0.93875),
    RGB(0.9271, 0.89113, 0.93913),
    RGB(0.92616, 0.88701, 0.93935),
    RGB(0.92511, 0.8828, 0.93945),
    RGB(0.92397, 0.87851, 0.93946),
    RGB(0.92276, 0.87416, 0.93938),
    RGB(0.92149, 0.86976, 0.93925),
    RGB(0.92018, 0.86533, 0.93907),
    RGB(0.91883, 0.86089, 0.93886),
    RGB(0.91747, 0.85642, 0.93862),
    RGB(0.91607, 0.85195, 0.93837),
    RGB(0.91467, 0.84746, 0.93811),
    RGB(0.91325, 0.84298, 0.93783),
    RGB(0.91182, 0.83849, 0.93754),
    RGB(0.91039, 0.834, 0.93726),
    RGB(0.90894, 0.82952, 0.93697),
    RGB(0.9075, 0.82502, 0.93668),
    RGB(0.90604, 0.82053, 0.93639),
    RGB(0.90457, 0.81605, 0.93609),
    RGB(0.9031, 0.81156, 0.93579),
    RGB(0.90162, 0.80708, 0.93549),
    RGB(0.90014, 0.80258, 0.93519),
    RGB(0.89864, 0.7981, 0.93488),
    RGB(0.89715, 0.79361, 0.93457),
    RGB(0.89564, 0.78912, 0.93426),
    RGB(0.89412, 0.78464, 0.93395),
    RGB(0.8926, 0.78014, 0.93363),
    RGB(0.89107, 0.77565, 0.93332),
    RGB(0.88953, 0.77117, 0.93299),
    RGB(0.88799, 0.76667, 0.93267),
    RGB(0.88644, 0.76218, 0.93235),
    RGB(0.88488, 0.75769, 0.93202),
    RGB(0.88332, 0.75319, 0.93169),
    RGB(0.88174, 0.7487, 0.93136),
    RGB(0.88016, 0.74421, 0.93103),
    RGB(0.87857, 0.73972, 0.93069),
    RGB(0.87698, 0.73522, 0.93035),
    RGB(0.87538, 0.73072, 0.93001),
    RGB(0.87377, 0.72622, 0.92966),
    RGB(0.87215, 0.72172, 0.92931),
    RGB(0.87052, 0.71723, 0.92896),
    RGB(0.8689, 0.71271, 0.92861),
    RGB(0.86725, 0.70822, 0.92826),
    RGB(0.86561, 0.70371, 0.9279),
    RGB(0.86396, 0.6992, 0.92754),
    RGB(0.8623, 0.69469, 0.92718),
    RGB(0.86063, 0.69018, 0.92682),
    RGB(0.85895, 0.68568, 0.92645),
    RGB(0.85727, 0.68116, 0.92609),
    RGB(0.85558, 0.67665, 0.92572),
    RGB(0.85388, 0.67213, 0.92534),
    RGB(0.85218, 0.66761, 0.92497),
    RGB(0.85046, 0.66309, 0.92459),
    RGB(0.84874, 0.65856, 0.92421),
    RGB(0.84701, 0.65404, 0.92383),
    RGB(0.84528, 0.64951, 0.92345),
    RGB(0.84353, 0.64497, 0.92306),
    RGB(0.84178, 0.64044, 0.92267),
    RGB(0.84003, 0.6359, 0.92228),
    RGB(0.83826, 0.63136, 0.92189),
    RGB(0.83649, 0.62682, 0.92149),
    RGB(0.83471, 0.62227, 0.92109),
    RGB(0.83291, 0.61772, 0.92069),
    RGB(0.83112, 0.61316, 0.92029),
    RGB(0.82932, 0.60861, 0.91989),
    RGB(0.8275, 0.60405, 0.91948),
    RGB(0.82568, 0.59948, 0.91907),
    RGB(0.82386, 0.59491, 0.91866),
    RGB(0.82203, 0.59033, 0.91825),
    RGB(0.82018, 0.58576, 0.91784),
    RGB(0.81833, 0.58117, 0.91743),
    RGB(0.81648, 0.57659, 0.91701),
    RGB(0.81461, 0.57199, 0.91658),
    RGB(0.81273, 0.56739, 0.91615),
    RGB(0.81085, 0.56279, 0.91573),
    RGB(0.80897, 0.55817, 0.9153),
    RGB(0.80707, 0.55356, 0.91487),
    RGB(0.80516, 0.54895, 0.91444),
    RGB(0.80325, 0.54431, 0.91401),
    RGB(0.80133, 0.53967, 0.91357),
    RGB(0.7994, 0.53504, 0.91313),
    RGB(0.79746, 0.53039, 0.91269),
    RGB(0.79552, 0.52573, 0.91225),
    RGB(0.79357, 0.52107, 0.9118),
    RGB(0.7916, 0.51639, 0.91136),
    RGB(0.78964, 0.51172, 0.91091),
    RGB(0.78766, 0.50703, 0.91046),
    RGB(0.78568, 0.50233, 0.91001),
    RGB(0.78368, 0.49764, 0.90955),
    RGB(0.78168, 0.49291, 0.90909),
    RGB(0.77967, 0.48819, 0.90863),
    RGB(0.77766, 0.48345, 0.90817),
    RGB(0.77563, 0.47871, 0.90771),
    RGB(0.77359, 0.47395, 0.90724),
    RGB(0.77155, 0.46919, 0.90678),
    RGB(0.7695, 0.46441, 0.90631),
    RGB(0.76744, 0.45961, 0.90584),
    RGB(0.76538, 0.45481, 0.90536),
    RGB(0.76329, 0.44999, 0.90489),
    RGB(0.76121, 0.44516, 0.90441),
    RGB(0.75912, 0.44031, 0.90393),
    RGB(0.75702, 0.43546, 0.90345),
    RGB(0.75491, 0.43057, 0.90297),
    RGB(0.75278, 0.42568, 0.90248),
    RGB(0.75066, 0.42076, 0.90199),
    RGB(0.74852, 0.41584, 0.9015),
    RGB(0.74638, 0.4109, 0.90101),
    RGB(0.74423, 0.40594, 0.90052),
    RGB(0.74206, 0.40096, 0.90002),
    RGB(0.7399, 0.39595, 0.89953),
    RGB(0.73771, 0.39092, 0.89903),
    RGB(0.73552, 0.38586, 0.89853),
    RGB(0.73333, 0.3808, 0.89802),
    RGB(0.73112, 0.37569, 0.89752),
    RGB(0.7289, 0.37056, 0.89702),
    RGB(0.72668, 0.36542, 0.89651),
    RGB(0.72444, 0.36023, 0.896),
    RGB(0.72219, 0.35504, 0.89548),
    RGB(0.71995, 0.34979, 0.89497),
], 64), :colorcet)

register_gradient_colors(:cinferno, sample_evenly([
    RGB(0, 0.047803, 0.4883),
    RGB(0, 0.049705, 0.49553),
    RGB(0, 0.051451, 0.50272),
    RGB(0, 0.053214, 0.50983),
    RGB(0, 0.054977, 0.51684),
    RGB(0, 0.056756, 0.52379),
    RGB(0, 0.058368, 0.53062),
    RGB(0, 0.060099, 0.53736),
    RGB(0, 0.061618, 0.54402),
    RGB(0, 0.063279, 0.55055),
    RGB(0, 0.06478, 0.55698),
    RGB(0, 0.066288, 0.56332),
    RGB(0, 0.067769, 0.5695),
    RGB(0, 0.069247, 0.57558),
    RGB(0, 0.070546, 0.58154),
    RGB(0, 0.071898, 0.58736),
    RGB(0, 0.073227, 0.59303),
    RGB(0, 0.074425, 0.59856),
    RGB(0, 0.075597, 0.60398),
    RGB(0, 0.076712, 0.60919),
    RGB(0, 0.077789, 0.61423),
    RGB(0, 0.078828, 0.61913),
    RGB(0, 0.079825, 0.62386),
    RGB(0, 0.080751, 0.62837),
    RGB(0, 0.081634, 0.63267),
    RGB(0, 0.082399, 0.63679),
    RGB(0, 0.083056, 0.64069),
    RGB(0, 0.083728, 0.64438),
    RGB(0, 0.084298, 0.64781),
    RGB(0, 0.084735, 0.65098),
    RGB(0, 0.085075, 0.65389),
    RGB(0, 0.085333, 0.65653),
    RGB(0, 0.085503, 0.65887),
    RGB(0, 0.085575, 0.66091),
    RGB(0, 0.085538, 0.66263),
    RGB(0, 0.085387, 0.664),
    RGB(0.041146, 0.085117, 0.66498),
    RGB(0.082348, 0.084719, 0.66559),
    RGB(0.11295, 0.084153, 0.66576),
    RGB(0.13887, 0.083348, 0.66549),
    RGB(0.16224, 0.08245, 0.66472),
    RGB(0.18389, 0.081312, 0.66345),
    RGB(0.20444, 0.079918, 0.6616),
    RGB(0.2241, 0.078308, 0.65916),
    RGB(0.24323, 0.076464, 0.65608),
    RGB(0.26189, 0.074387, 0.65234),
    RGB(0.27969, 0.072084, 0.64827),
    RGB(0.29634, 0.069818, 0.64421),
    RGB(0.31196, 0.067486, 0.64024),
    RGB(0.32675, 0.065157, 0.63634),
    RGB(0.34081, 0.062906, 0.63252),
    RGB(0.35421, 0.060546, 0.6288),
    RGB(0.36705, 0.058179, 0.62515),
    RGB(0.3794, 0.055931, 0.62158),
    RGB(0.39131, 0.05356, 0.6181),
    RGB(0.40281, 0.051267, 0.6147),
    RGB(0.41397, 0.049057, 0.6114),
    RGB(0.42479, 0.046684, 0.60817),
    RGB(0.43533, 0.044376, 0.60501),
    RGB(0.44558, 0.042108, 0.60193),
    RGB(0.4556, 0.039763, 0.59895),
    RGB(0.46537, 0.037486, 0.59604),
    RGB(0.47496, 0.035294, 0.59322),
    RGB(0.48432, 0.032963, 0.59047),
    RGB(0.49352, 0.030903, 0.5878),
    RGB(0.50254, 0.028926, 0.58523),
    RGB(0.5114, 0.027022, 0.58272),
    RGB(0.52012, 0.025191, 0.5803),
    RGB(0.52872, 0.02343, 0.57794),
    RGB(0.53717, 0.021744, 0.57569),
    RGB(0.54549, 0.020131, 0.57351),
    RGB(0.5537, 0.018589, 0.5714),
    RGB(0.56182, 0.017116, 0.56937),
    RGB(0.56982, 0.015713, 0.56743),
    RGB(0.57772, 0.014383, 0.56556),
    RGB(0.58556, 0.013108, 0.56378),
    RGB(0.59331, 0.011906, 0.56202),
    RGB(0.60102, 0.010448, 0.56026),
    RGB(0.60871, 0.0092728, 0.55849),
    RGB(0.61634, 0.0080608, 0.55673),
    RGB(0.62394, 0.0068636, 0.55496),
    RGB(0.6315, 0.0056715, 0.55317),
    RGB(0.63904, 0.0044851, 0.5514),
    RGB(0.64654, 0.0033027, 0.5496),
    RGB(0.65401, 0.0021237, 0.54781),
    RGB(0.66146, 0.00094944, 0.54601),
    RGB(0.66888, 0, 0.54419),
    RGB(0.67628, 0, 0.54238),
    RGB(0.68364, 0, 0.54055),
    RGB(0.69099, 0, 0.53873),
    RGB(0.69832, 0, 0.53689),
    RGB(0.70562, 0, 0.53504),
    RGB(0.71291, 0, 0.53319),
    RGB(0.72018, 0, 0.53134),
    RGB(0.72742, 0, 0.52948),
    RGB(0.73466, 0, 0.52761),
    RGB(0.74187, 0, 0.52573),
    RGB(0.74906, 0, 0.52385),
    RGB(0.75625, 0, 0.52195),
    RGB(0.76342, 0, 0.52005),
    RGB(0.77058, 0, 0.51816),
    RGB(0.77773, 0, 0.51624),
    RGB(0.78486, 0, 0.51433),
    RGB(0.79198, 0, 0.51239),
    RGB(0.79909, 0, 0.51046),
    RGB(0.80618, 0, 0.50853),
    RGB(0.81322, 0, 0.50656),
    RGB(0.82017, 0, 0.50459),
    RGB(0.82703, 0, 0.50258),
    RGB(0.83381, 0, 0.50056),
    RGB(0.84048, 0, 0.49853),
    RGB(0.84706, 0, 0.49645),
    RGB(0.85355, 0, 0.49437),
    RGB(0.85996, 0, 0.49225),
    RGB(0.86628, 0, 0.49011),
    RGB(0.8725, 0, 0.48796),
    RGB(0.87863, 0.0025964, 0.48577),
    RGB(0.88468, 0.0090591, 0.48356),
    RGB(0.89063, 0.016464, 0.48133),
    RGB(0.8965, 0.024452, 0.47908),
    RGB(0.90228, 0.033265, 0.47679),
    RGB(0.90796, 0.042948, 0.47449),
    RGB(0.91356, 0.052352, 0.47216),
    RGB(0.91907, 0.061335, 0.4698),
    RGB(0.92449, 0.070106, 0.46741),
    RGB(0.92982, 0.07857, 0.46499),
    RGB(0.93506, 0.086993, 0.46255),
    RGB(0.94022, 0.095176, 0.46008),
    RGB(0.94529, 0.10322, 0.45759),
    RGB(0.95027, 0.11119, 0.45507),
    RGB(0.95516, 0.11907, 0.45252),
    RGB(0.95996, 0.12687, 0.44993),
    RGB(0.96467, 0.13467, 0.44731),
    RGB(0.9693, 0.14235, 0.44468),
    RGB(0.97383, 0.15004, 0.44201),
    RGB(0.97827, 0.15766, 0.43929),
    RGB(0.9826, 0.16532, 0.43656),
    RGB(0.9868, 0.17308, 0.4338),
    RGB(0.99086, 0.18089, 0.43103),
    RGB(0.99477, 0.18882, 0.42822),
    RGB(0.99854, 0.19681, 0.42539),
    RGB(1, 0.20481, 0.42252),
    RGB(1, 0.21285, 0.41965),
    RGB(1, 0.22099, 0.41674),
    RGB(1, 0.22914, 0.4138),
    RGB(1, 0.23736, 0.41083),
    RGB(1, 0.24555, 0.40783),
    RGB(1, 0.25382, 0.4048),
    RGB(1, 0.2621, 0.40173),
    RGB(1, 0.27043, 0.39864),
    RGB(1, 0.27875, 0.39552),
    RGB(1, 0.28708, 0.39235),
    RGB(1, 0.29545, 0.38916),
    RGB(1, 0.30385, 0.38591),
    RGB(1, 0.31225, 0.38264),
    RGB(1, 0.3207, 0.37933),
    RGB(1, 0.32913, 0.37598),
    RGB(1, 0.33756, 0.37257),
    RGB(1, 0.34602, 0.36914),
    RGB(1, 0.35451, 0.36565),
    RGB(1, 0.36297, 0.36212),
    RGB(1, 0.37145, 0.35853),
    RGB(1, 0.37995, 0.35492),
    RGB(1, 0.38846, 0.35122),
    RGB(1, 0.39696, 0.34749),
    RGB(1, 0.40547, 0.34369),
    RGB(1, 0.4139, 0.33986),
    RGB(1, 0.4222, 0.33597),
    RGB(1, 0.4304, 0.33207),
    RGB(1, 0.43847, 0.3281),
    RGB(1, 0.44643, 0.3241),
    RGB(1, 0.45429, 0.32007),
    RGB(1, 0.46204, 0.31598),
    RGB(1, 0.46971, 0.31182),
    RGB(1, 0.47727, 0.30763),
    RGB(1, 0.48476, 0.30339),
    RGB(1, 0.49217, 0.2991),
    RGB(1, 0.4995, 0.29473),
    RGB(1, 0.50677, 0.2903),
    RGB(1, 0.51397, 0.28581),
    RGB(1, 0.5211, 0.28126),
    RGB(1, 0.52816, 0.27665),
    RGB(1, 0.53517, 0.27191),
    RGB(1, 0.54212, 0.26713),
    RGB(1, 0.54902, 0.26226),
    RGB(1, 0.55585, 0.2573),
    RGB(1, 0.56265, 0.25223),
    RGB(1, 0.56938, 0.24705),
    RGB(1, 0.57609, 0.24177),
    RGB(1, 0.58273, 0.23637),
    RGB(1, 0.58934, 0.23082),
    RGB(1, 0.59591, 0.22513),
    RGB(1, 0.60244, 0.21933),
    RGB(1, 0.60893, 0.21333),
    RGB(1, 0.61536, 0.20719),
    RGB(1, 0.62179, 0.20085),
    RGB(1, 0.62814, 0.19473),
    RGB(1, 0.63438, 0.18898),
    RGB(1, 0.64052, 0.18363),
    RGB(1, 0.64658, 0.17866),
    RGB(1, 0.65258, 0.17395),
    RGB(1, 0.65851, 0.16956),
    RGB(1, 0.66439, 0.16532),
    RGB(1, 0.67023, 0.1614),
    RGB(1, 0.67601, 0.15763),
    RGB(1, 0.68174, 0.1541),
    RGB(1, 0.68745, 0.15075),
    RGB(1, 0.69312, 0.14754),
    RGB(1, 0.69875, 0.14449),
    RGB(1, 0.70435, 0.14163),
    RGB(1, 0.70993, 0.13886),
    RGB(1, 0.71548, 0.13623),
    RGB(1, 0.72099, 0.13382),
    RGB(1, 0.72649, 0.1315),
    RGB(1, 0.73197, 0.12928),
    RGB(1, 0.73742, 0.12722),
    RGB(1, 0.74286, 0.1253),
    RGB(1, 0.74827, 0.12347),
    RGB(1, 0.75367, 0.1218),
    RGB(1, 0.75905, 0.12025),
    RGB(1, 0.76442, 0.11888),
    RGB(1, 0.76976, 0.11751),
    RGB(1, 0.7751, 0.11639),
    RGB(1, 0.78042, 0.11528),
    RGB(1, 0.78573, 0.11434),
    RGB(1, 0.79102, 0.11357),
    RGB(1, 0.79631, 0.11289),
    RGB(1, 0.80158, 0.1123),
    RGB(1, 0.80685, 0.11183),
    RGB(1, 0.81209, 0.1115),
    RGB(1, 0.81733, 0.11127),
    RGB(1, 0.82257, 0.11116),
    RGB(1, 0.82778, 0.11116),
    RGB(1, 0.833, 0.11128),
    RGB(1, 0.8382, 0.1115),
    RGB(1, 0.8434, 0.11183),
    RGB(1, 0.84859, 0.11227),
    RGB(1, 0.85377, 0.11282),
    RGB(1, 0.85894, 0.11347),
    RGB(1, 0.86412, 0.11414),
    RGB(1, 0.86928, 0.115),
    RGB(1, 0.87443, 0.11595),
    RGB(1, 0.87958, 0.11697),
    RGB(1, 0.88472, 0.11809),
    RGB(1, 0.88986, 0.11929),
    RGB(1, 0.89499, 0.12054),
    RGB(1, 0.90012, 0.1219),
    RGB(1, 0.90524, 0.12335),
    RGB(1, 0.91036, 0.12486),
    RGB(1, 0.91547, 0.12649),
    RGB(1, 0.92058, 0.12812),
    RGB(1, 0.92569, 0.1299),
    RGB(1, 0.93079, 0.13165),
    RGB(1, 0.93588, 0.13349),
    RGB(1, 0.94097, 0.13541),
    RGB(1, 0.94606, 0.13735),
], 64), :colorcet)

register_gradient_colors(:isolum, sample_evenly([
    RGB(0.43773, 0.82141, 1),
    RGB(0.438, 0.82178, 1),
    RGB(0.43825, 0.82216, 1),
    RGB(0.43853, 0.82252, 1),
    RGB(0.4388, 0.82289, 1),
    RGB(0.43909, 0.82325, 0.99787),
    RGB(0.43939, 0.82362, 0.99477),
    RGB(0.43969, 0.82398, 0.99168),
    RGB(0.44, 0.82433, 0.98857),
    RGB(0.44031, 0.82469, 0.98546),
    RGB(0.44063, 0.82504, 0.98235),
    RGB(0.44095, 0.8254, 0.97923),
    RGB(0.44129, 0.82575, 0.97611),
    RGB(0.44163, 0.82609, 0.97299),
    RGB(0.44199, 0.82644, 0.96986),
    RGB(0.44234, 0.82678, 0.96673),
    RGB(0.4427, 0.82712, 0.96359),
    RGB(0.44307, 0.82746, 0.96045),
    RGB(0.44345, 0.82779, 0.95731),
    RGB(0.44384, 0.82812, 0.95416),
    RGB(0.44424, 0.82845, 0.95101),
    RGB(0.44464, 0.82878, 0.94785),
    RGB(0.44505, 0.82911, 0.94469),
    RGB(0.44546, 0.82943, 0.94152),
    RGB(0.44589, 0.82975, 0.93835),
    RGB(0.44634, 0.83007, 0.93517),
    RGB(0.44679, 0.83038, 0.93199),
    RGB(0.44725, 0.83069, 0.9288),
    RGB(0.4477, 0.831, 0.92562),
    RGB(0.4482, 0.83131, 0.92243),
    RGB(0.44869, 0.83161, 0.91922),
    RGB(0.44919, 0.83191, 0.91602),
    RGB(0.4497, 0.83221, 0.91281),
    RGB(0.45022, 0.8325, 0.9096),
    RGB(0.45076, 0.83279, 0.90638),
    RGB(0.4513, 0.83308, 0.90316),
    RGB(0.45186, 0.83337, 0.89993),
    RGB(0.45244, 0.83365, 0.8967),
    RGB(0.45301, 0.83394, 0.89345),
    RGB(0.4536, 0.83421, 0.89021),
    RGB(0.45421, 0.83448, 0.88696),
    RGB(0.45483, 0.83475, 0.8837),
    RGB(0.45546, 0.83502, 0.88044),
    RGB(0.45611, 0.83528, 0.87717),
    RGB(0.45676, 0.83555, 0.8739),
    RGB(0.45744, 0.8358, 0.87062),
    RGB(0.45813, 0.83606, 0.86733),
    RGB(0.45884, 0.83631, 0.86405),
    RGB(0.45956, 0.83656, 0.86075),
    RGB(0.46029, 0.8368, 0.85744),
    RGB(0.46104, 0.83704, 0.85414),
    RGB(0.46181, 0.83728, 0.85082),
    RGB(0.46259, 0.83751, 0.8475),
    RGB(0.46339, 0.83774, 0.84417),
    RGB(0.46422, 0.83796, 0.84084),
    RGB(0.46505, 0.83818, 0.8375),
    RGB(0.46591, 0.8384, 0.83416),
    RGB(0.46679, 0.83861, 0.8308),
    RGB(0.46767, 0.83882, 0.82744),
    RGB(0.46859, 0.83903, 0.82407),
    RGB(0.46953, 0.83923, 0.8207),
    RGB(0.47047, 0.83943, 0.81732),
    RGB(0.47145, 0.83962, 0.81393),
    RGB(0.47244, 0.83981, 0.81053),
    RGB(0.47345, 0.83999, 0.80714),
    RGB(0.47449, 0.84017, 0.80373),
    RGB(0.47556, 0.84034, 0.80031),
    RGB(0.47664, 0.84051, 0.79688),
    RGB(0.47774, 0.84067, 0.79346),
    RGB(0.47888, 0.84083, 0.79002),
    RGB(0.48003, 0.84098, 0.78658),
    RGB(0.48121, 0.84113, 0.78312),
    RGB(0.48242, 0.84127, 0.77966),
    RGB(0.48365, 0.8414, 0.77619),
    RGB(0.48491, 0.84153, 0.77272),
    RGB(0.4862, 0.84166, 0.76924),
    RGB(0.48753, 0.84178, 0.76575),
    RGB(0.48887, 0.84189, 0.76225),
    RGB(0.49025, 0.842, 0.75875),
    RGB(0.49167, 0.8421, 0.75524),
    RGB(0.49309, 0.84219, 0.75172),
    RGB(0.49457, 0.84228, 0.74819),
    RGB(0.49605, 0.84236, 0.74465),
    RGB(0.4976, 0.84243, 0.74111),
    RGB(0.49917, 0.84249, 0.73756),
    RGB(0.50078, 0.84255, 0.73401),
    RGB(0.50242, 0.8426, 0.73045),
    RGB(0.5041, 0.84264, 0.72687),
    RGB(0.5058, 0.84267, 0.7233),
    RGB(0.50756, 0.8427, 0.71972),
    RGB(0.50935, 0.84271, 0.71613),
    RGB(0.51117, 0.84272, 0.71253),
    RGB(0.51304, 0.84272, 0.70893),
    RGB(0.51496, 0.84271, 0.70532),
    RGB(0.51691, 0.84269, 0.70171),
    RGB(0.51891, 0.84266, 0.69809),
    RGB(0.52094, 0.84262, 0.69447),
    RGB(0.52303, 0.84257, 0.69084),
    RGB(0.52516, 0.84251, 0.68722),
    RGB(0.52734, 0.84243, 0.68359),
    RGB(0.52957, 0.84235, 0.67995),
    RGB(0.53184, 0.84226, 0.67632),
    RGB(0.53416, 0.84215, 0.67268),
    RGB(0.53654, 0.84203, 0.66904),
    RGB(0.53896, 0.84189, 0.66541),
    RGB(0.54142, 0.84175, 0.66178),
    RGB(0.54396, 0.84159, 0.65814),
    RGB(0.54654, 0.84142, 0.65451),
    RGB(0.54917, 0.84123, 0.65088),
    RGB(0.55185, 0.84103, 0.64727),
    RGB(0.55458, 0.84082, 0.64365),
    RGB(0.55737, 0.84059, 0.64005),
    RGB(0.56021, 0.84035, 0.63646),
    RGB(0.56311, 0.84009, 0.63287),
    RGB(0.56606, 0.83981, 0.6293),
    RGB(0.56906, 0.83952, 0.62575),
    RGB(0.57213, 0.8392, 0.6222),
    RGB(0.57524, 0.83888, 0.61869),
    RGB(0.5784, 0.83854, 0.61518),
    RGB(0.58162, 0.83818, 0.61171),
    RGB(0.5849, 0.8378, 0.60826),
    RGB(0.58821, 0.83741, 0.60483),
    RGB(0.59159, 0.837, 0.60142),
    RGB(0.595, 0.83656, 0.59805),
    RGB(0.59846, 0.83612, 0.59472),
    RGB(0.60197, 0.83565, 0.59142),
    RGB(0.60552, 0.83517, 0.58814),
    RGB(0.60913, 0.83467, 0.58492),
    RGB(0.61275, 0.83415, 0.58173),
    RGB(0.61642, 0.83362, 0.57858),
    RGB(0.62014, 0.83306, 0.57549),
    RGB(0.62388, 0.83249, 0.57243),
    RGB(0.62765, 0.83191, 0.56942),
    RGB(0.63145, 0.8313, 0.56646),
    RGB(0.63527, 0.83068, 0.56356),
    RGB(0.63912, 0.83004, 0.56069),
    RGB(0.64299, 0.82939, 0.55789),
    RGB(0.64689, 0.82872, 0.55514),
    RGB(0.6508, 0.82803, 0.55245),
    RGB(0.65472, 0.82733, 0.5498),
    RGB(0.65865, 0.82662, 0.54721),
    RGB(0.66261, 0.82589, 0.54468),
    RGB(0.66656, 0.82515, 0.54221),
    RGB(0.67053, 0.82439, 0.53979),
    RGB(0.6745, 0.82363, 0.53744),
    RGB(0.67847, 0.82285, 0.53513),
    RGB(0.68244, 0.82206, 0.53288),
    RGB(0.68642, 0.82125, 0.53068),
    RGB(0.69038, 0.82043, 0.52855),
    RGB(0.69435, 0.8196, 0.52647),
    RGB(0.6983, 0.81877, 0.5244),
    RGB(0.70224, 0.81793, 0.52237),
    RGB(0.70617, 0.81709, 0.52036),
    RGB(0.71008, 0.81624, 0.51839),
    RGB(0.71397, 0.81537, 0.51642),
    RGB(0.71785, 0.81451, 0.51449),
    RGB(0.72171, 0.81363, 0.51258),
    RGB(0.72557, 0.81275, 0.5107),
    RGB(0.7294, 0.81187, 0.50885),
    RGB(0.73323, 0.81098, 0.50702),
    RGB(0.73704, 0.81008, 0.50522),
    RGB(0.74083, 0.80918, 0.50344),
    RGB(0.74462, 0.80826, 0.50171),
    RGB(0.7484, 0.80735, 0.49999),
    RGB(0.75216, 0.80642, 0.49833),
    RGB(0.75591, 0.80548, 0.49666),
    RGB(0.75965, 0.80455, 0.49505),
    RGB(0.76337, 0.8036, 0.49346),
    RGB(0.76709, 0.80265, 0.49191),
    RGB(0.7708, 0.80169, 0.49039),
    RGB(0.77448, 0.80072, 0.4889),
    RGB(0.77817, 0.79975, 0.48745),
    RGB(0.78184, 0.79876, 0.48602),
    RGB(0.7855, 0.79777, 0.48463),
    RGB(0.78915, 0.79678, 0.48328),
    RGB(0.79278, 0.79578, 0.48198),
    RGB(0.7964, 0.79477, 0.4807),
    RGB(0.80002, 0.79376, 0.47946),
    RGB(0.80362, 0.79273, 0.47826),
    RGB(0.80722, 0.7917, 0.47709),
    RGB(0.8108, 0.79066, 0.47597),
    RGB(0.81437, 0.78962, 0.47489),
    RGB(0.81792, 0.78857, 0.47383),
    RGB(0.82147, 0.78751, 0.47283),
    RGB(0.82501, 0.78645, 0.47187),
    RGB(0.82853, 0.78538, 0.47094),
    RGB(0.83205, 0.7843, 0.47006),
    RGB(0.83555, 0.78321, 0.46922),
    RGB(0.83903, 0.78212, 0.46841),
    RGB(0.84251, 0.78102, 0.46765),
    RGB(0.84597, 0.77992, 0.46694),
    RGB(0.84943, 0.77881, 0.46626),
    RGB(0.85287, 0.77769, 0.46563),
    RGB(0.85629, 0.77657, 0.46504),
    RGB(0.85971, 0.77544, 0.46451),
    RGB(0.86311, 0.7743, 0.46401),
    RGB(0.86649, 0.77316, 0.46354),
    RGB(0.86986, 0.77201, 0.46313),
    RGB(0.87323, 0.77086, 0.46276),
    RGB(0.87657, 0.7697, 0.46244),
    RGB(0.87991, 0.76853, 0.46216),
    RGB(0.88323, 0.76736, 0.46193),
    RGB(0.88653, 0.76619, 0.46174),
    RGB(0.88982, 0.76501, 0.46159),
    RGB(0.89309, 0.76382, 0.46149),
    RGB(0.89636, 0.76263, 0.46143),
    RGB(0.8996, 0.76143, 0.46142),
    RGB(0.90283, 0.76023, 0.46145),
    RGB(0.90605, 0.75903, 0.46152),
    RGB(0.90924, 0.75782, 0.46164),
    RGB(0.91242, 0.7566, 0.4618),
    RGB(0.91559, 0.75539, 0.462),
    RGB(0.91874, 0.75416, 0.46225),
    RGB(0.92188, 0.75293, 0.46253),
    RGB(0.92499, 0.75171, 0.46286),
    RGB(0.92809, 0.75047, 0.46324),
    RGB(0.93118, 0.74922, 0.46366),
    RGB(0.93424, 0.74799, 0.46413),
    RGB(0.9373, 0.74674, 0.46462),
    RGB(0.94033, 0.74549, 0.46515),
    RGB(0.94335, 0.74424, 0.46573),
    RGB(0.94635, 0.74299, 0.46635),
    RGB(0.94933, 0.74172, 0.46702),
    RGB(0.95229, 0.74046, 0.46771),
    RGB(0.95524, 0.7392, 0.46844),
    RGB(0.95817, 0.73792, 0.46923),
    RGB(0.96108, 0.73666, 0.47004),
    RGB(0.96398, 0.73539, 0.47088),
    RGB(0.96685, 0.73411, 0.47177),
    RGB(0.96971, 0.73284, 0.47268),
    RGB(0.97256, 0.73155, 0.47363),
    RGB(0.97537, 0.73027, 0.47464),
    RGB(0.97818, 0.72899, 0.47566),
    RGB(0.98097, 0.7277, 0.47671),
    RGB(0.98374, 0.72642, 0.47781),
    RGB(0.98649, 0.72513, 0.47893),
    RGB(0.98923, 0.72383, 0.4801),
    RGB(0.99194, 0.72254, 0.48128),
    RGB(0.99464, 0.72125, 0.4825),
    RGB(0.99732, 0.71995, 0.48375),
    RGB(0.99999, 0.71865, 0.48503),
    RGB(1, 0.71736, 0.48634),
    RGB(1, 0.71606, 0.48769),
    RGB(1, 0.71476, 0.48905),
    RGB(1, 0.71346, 0.49046),
    RGB(1, 0.71215, 0.49188),
    RGB(1, 0.71085, 0.49332),
    RGB(1, 0.70955, 0.49481),
    RGB(1, 0.70824, 0.4963),
    RGB(1, 0.70694, 0.49785),
    RGB(1, 0.70563, 0.49939),
    RGB(1, 0.70432, 0.50098),
    RGB(1, 0.70301, 0.50257),
    RGB(1, 0.70169, 0.50421),
    RGB(1, 0.70039, 0.50584),
    RGB(1, 0.69907, 0.50753),
], 64), :colorcet)

register_gradient_colors(:kb, sample_evenly([
    RGB(0, 0, 0),
    RGB(0.00074336, 0.0024531, 0.0074342),
    RGB(0.0014922, 0.0049243, 0.014921),
    RGB(0.0022238, 0.0073388, 0.022238),
    RGB(0.0029727, 0.0098191, 0.029727),
    RGB(0.003759, 0.01243, 0.037588),
    RGB(0.0044965, 0.014837, 0.045061),
    RGB(0.0052171, 0.017216, 0.052174),
    RGB(0.0059233, 0.019547, 0.05928),
    RGB(0.0066117, 0.021819, 0.066122),
    RGB(0.0072841, 0.024037, 0.07289),
    RGB(0.0079425, 0.026211, 0.079443),
    RGB(0.008587, 0.02834, 0.085862),
    RGB(0.0092271, 0.03044, 0.092265),
    RGB(0.009844, 0.03246, 0.098364),
    RGB(0.010477, 0.034486, 0.10458),
    RGB(0.011109, 0.036556, 0.11078),
    RGB(0.01171, 0.038495, 0.11667),
    RGB(0.012273, 0.040403, 0.12242),
    RGB(0.012818, 0.042245, 0.1279),
    RGB(0.013348, 0.043976, 0.13326),
    RGB(0.013879, 0.04566, 0.1385),
    RGB(0.014395, 0.047394, 0.14358),
    RGB(0.014889, 0.049082, 0.14858),
    RGB(0.015355, 0.050605, 0.15335),
    RGB(0.015827, 0.052141, 0.15801),
    RGB(0.016294, 0.053656, 0.16261),
    RGB(0.016752, 0.05516, 0.16717),
    RGB(0.017191, 0.056648, 0.17153),
    RGB(0.017621, 0.057987, 0.17584),
    RGB(0.018044, 0.059476, 0.18012),
    RGB(0.018452, 0.060774, 0.18421),
    RGB(0.018859, 0.062143, 0.1883),
    RGB(0.019258, 0.063465, 0.19229),
    RGB(0.019638, 0.064737, 0.19618),
    RGB(0.019991, 0.066008, 0.19999),
    RGB(0.020369, 0.06727, 0.20383),
    RGB(0.020743, 0.068517, 0.20757),
    RGB(0.021108, 0.069731, 0.21123),
    RGB(0.021466, 0.07089, 0.21479),
    RGB(0.021817, 0.072042, 0.21833),
    RGB(0.022172, 0.073262, 0.22184),
    RGB(0.022518, 0.074345, 0.22528),
    RGB(0.022855, 0.075456, 0.22864),
    RGB(0.023186, 0.076553, 0.23196),
    RGB(0.023512, 0.077642, 0.23526),
    RGB(0.02384, 0.078716, 0.2385),
    RGB(0.024178, 0.079786, 0.24179),
    RGB(0.024507, 0.080865, 0.24506),
    RGB(0.024831, 0.08197, 0.24832),
    RGB(0.025156, 0.08299, 0.25156),
    RGB(0.02548, 0.084106, 0.2548),
    RGB(0.025801, 0.085132, 0.25798),
    RGB(0.026127, 0.086192, 0.26127),
    RGB(0.026456, 0.087333, 0.26456),
    RGB(0.026783, 0.088377, 0.26781),
    RGB(0.027109, 0.089458, 0.27108),
    RGB(0.027438, 0.090542, 0.27438),
    RGB(0.027766, 0.091648, 0.27766),
    RGB(0.02809, 0.092669, 0.28088),
    RGB(0.028421, 0.093789, 0.2842),
    RGB(0.028753, 0.094903, 0.28753),
    RGB(0.029077, 0.095942, 0.29078),
    RGB(0.029408, 0.097031, 0.29407),
    RGB(0.029741, 0.09817, 0.29742),
    RGB(0.030072, 0.099229, 0.30072),
    RGB(0.030403, 0.10033, 0.30402),
    RGB(0.030735, 0.10143, 0.30733),
    RGB(0.031072, 0.10254, 0.31072),
    RGB(0.031403, 0.10364, 0.31403),
    RGB(0.031734, 0.1047, 0.31734),
    RGB(0.032072, 0.10585, 0.32074),
    RGB(0.032408, 0.10696, 0.32408),
    RGB(0.032743, 0.10802, 0.32739),
    RGB(0.033082, 0.10918, 0.33077),
    RGB(0.033414, 0.11028, 0.33418),
    RGB(0.033742, 0.11138, 0.33753),
    RGB(0.034077, 0.1125, 0.3409),
    RGB(0.03442, 0.11362, 0.34424),
    RGB(0.034765, 0.11469, 0.34763),
    RGB(0.035114, 0.11586, 0.35104),
    RGB(0.035456, 0.11695, 0.35445),
    RGB(0.035791, 0.1181, 0.35784),
    RGB(0.036121, 0.1192, 0.36122),
    RGB(0.036456, 0.12031, 0.36459),
    RGB(0.036796, 0.12143, 0.36797),
    RGB(0.037139, 0.12255, 0.37137),
    RGB(0.037483, 0.12369, 0.37481),
    RGB(0.037828, 0.12482, 0.37826),
    RGB(0.038169, 0.12598, 0.38168),
    RGB(0.038511, 0.12707, 0.3851),
    RGB(0.038856, 0.12823, 0.38856),
    RGB(0.0392, 0.12935, 0.392),
    RGB(0.039546, 0.13052, 0.39546),
    RGB(0.03989, 0.13163, 0.39889),
    RGB(0.040235, 0.13277, 0.40233),
    RGB(0.040581, 0.13392, 0.40582),
    RGB(0.040922, 0.13506, 0.40923),
    RGB(0.041266, 0.13617, 0.41269),
    RGB(0.041619, 0.13735, 0.4162),
    RGB(0.04197, 0.13849, 0.41964),
    RGB(0.042315, 0.1396, 0.42308),
    RGB(0.042655, 0.14079, 0.42658),
    RGB(0.042998, 0.14192, 0.43006),
    RGB(0.043353, 0.14307, 0.43353),
    RGB(0.043707, 0.14422, 0.43705),
    RGB(0.044054, 0.1454, 0.44054),
    RGB(0.044401, 0.14652, 0.44404),
    RGB(0.044755, 0.14769, 0.44752),
    RGB(0.045109, 0.14883, 0.45103),
    RGB(0.045452, 0.15001, 0.45455),
    RGB(0.045792, 0.15115, 0.45803),
    RGB(0.046147, 0.15231, 0.46154),
    RGB(0.046509, 0.15347, 0.46506),
    RGB(0.046871, 0.15464, 0.4686),
    RGB(0.047221, 0.15582, 0.47216),
    RGB(0.047563, 0.15696, 0.47568),
    RGB(0.047916, 0.15815, 0.47921),
    RGB(0.048273, 0.1593, 0.48272),
    RGB(0.048631, 0.16046, 0.48628),
    RGB(0.048997, 0.16167, 0.48986),
    RGB(0.049352, 0.16283, 0.49342),
    RGB(0.049698, 0.16401, 0.49696),
    RGB(0.050046, 0.16514, 0.50048),
    RGB(0.050404, 0.16634, 0.50406),
    RGB(0.050762, 0.16751, 0.50763),
    RGB(0.051121, 0.1687, 0.5112),
    RGB(0.051479, 0.16988, 0.51479),
    RGB(0.051833, 0.17105, 0.51834),
    RGB(0.05219, 0.17223, 0.5219),
    RGB(0.052551, 0.17342, 0.52551),
    RGB(0.052909, 0.17461, 0.5291),
    RGB(0.053266, 0.17577, 0.53267),
    RGB(0.053628, 0.17697, 0.53628),
    RGB(0.05399, 0.17818, 0.53989),
    RGB(0.054349, 0.17935, 0.54349),
    RGB(0.054708, 0.18053, 0.54707),
    RGB(0.055067, 0.18172, 0.55067),
    RGB(0.055429, 0.18292, 0.55429),
    RGB(0.055793, 0.18412, 0.55793),
    RGB(0.056155, 0.18533, 0.56157),
    RGB(0.056521, 0.18651, 0.5652),
    RGB(0.056888, 0.18772, 0.56884),
    RGB(0.057244, 0.18891, 0.57245),
    RGB(0.0576, 0.1901, 0.57607),
    RGB(0.057967, 0.1913, 0.57969),
    RGB(0.058336, 0.1925, 0.58335),
    RGB(0.058702, 0.19372, 0.58701),
    RGB(0.059067, 0.19492, 0.59066),
    RGB(0.059436, 0.19613, 0.59432),
    RGB(0.059804, 0.19733, 0.59797),
    RGB(0.060167, 0.19853, 0.60161),
    RGB(0.060527, 0.19973, 0.60525),
    RGB(0.060887, 0.20094, 0.60892),
    RGB(0.061253, 0.20216, 0.61259),
    RGB(0.061628, 0.20338, 0.6163),
    RGB(0.062, 0.2046, 0.61999),
    RGB(0.06237, 0.20581, 0.62368),
    RGB(0.062743, 0.20703, 0.62736),
    RGB(0.063109, 0.20824, 0.63104),
    RGB(0.063471, 0.20946, 0.63472),
    RGB(0.06384, 0.21068, 0.63842),
    RGB(0.064212, 0.21191, 0.64213),
    RGB(0.064582, 0.2131, 0.64581),
    RGB(0.064951, 0.21435, 0.64951),
    RGB(0.065324, 0.21557, 0.65323),
    RGB(0.065695, 0.21679, 0.65696),
    RGB(0.066066, 0.21802, 0.66066),
    RGB(0.066438, 0.21924, 0.66438),
    RGB(0.066811, 0.22049, 0.66812),
    RGB(0.067184, 0.22169, 0.67183),
    RGB(0.067556, 0.22294, 0.67556),
    RGB(0.067927, 0.22415, 0.67926),
    RGB(0.068301, 0.2254, 0.68302),
    RGB(0.068677, 0.22664, 0.68678),
    RGB(0.069052, 0.22788, 0.69052),
    RGB(0.069427, 0.2291, 0.69424),
    RGB(0.0698, 0.23033, 0.69799),
    RGB(0.07017, 0.23158, 0.70175),
    RGB(0.070545, 0.23281, 0.70549),
    RGB(0.070927, 0.23405, 0.70927),
    RGB(0.07131, 0.23531, 0.71304),
    RGB(0.071685, 0.23655, 0.71681),
    RGB(0.072052, 0.23779, 0.72056),
    RGB(0.072426, 0.23902, 0.72432),
    RGB(0.072809, 0.24026, 0.72809),
    RGB(0.073193, 0.24153, 0.73188),
    RGB(0.073573, 0.24276, 0.73565),
    RGB(0.073946, 0.24401, 0.73944),
    RGB(0.074319, 0.24526, 0.74322),
    RGB(0.0747, 0.24651, 0.74702),
    RGB(0.075082, 0.24778, 0.75083),
    RGB(0.075461, 0.24902, 0.75462),
    RGB(0.075841, 0.25026, 0.75841),
    RGB(0.076222, 0.25154, 0.76222),
    RGB(0.076602, 0.25279, 0.76602),
    RGB(0.076984, 0.25405, 0.76985),
    RGB(0.077365, 0.25531, 0.77365),
    RGB(0.077744, 0.25656, 0.77745),
    RGB(0.078128, 0.25781, 0.78128),
    RGB(0.078511, 0.25909, 0.78511),
    RGB(0.078893, 0.26035, 0.78893),
    RGB(0.079275, 0.26161, 0.79275),
    RGB(0.07966, 0.26288, 0.7966),
    RGB(0.080044, 0.26414, 0.80043),
    RGB(0.080427, 0.26541, 0.80427),
    RGB(0.08081, 0.26667, 0.80809),
    RGB(0.081193, 0.26794, 0.81194),
    RGB(0.081582, 0.26923, 0.81583),
    RGB(0.081967, 0.27049, 0.81966),
    RGB(0.082351, 0.27175, 0.8235),
    RGB(0.082734, 0.27303, 0.82736),
    RGB(0.08312, 0.2743, 0.83122),
    RGB(0.08351, 0.27558, 0.8351),
    RGB(0.083897, 0.27686, 0.83896),
    RGB(0.084288, 0.27814, 0.84284),
    RGB(0.084673, 0.27941, 0.84669),
    RGB(0.085055, 0.28068, 0.85055),
    RGB(0.085441, 0.28197, 0.85445),
    RGB(0.085828, 0.28325, 0.85832),
    RGB(0.086218, 0.28452, 0.8622),
    RGB(0.086607, 0.2858, 0.86608),
    RGB(0.087001, 0.28709, 0.86997),
    RGB(0.087391, 0.28838, 0.87388),
    RGB(0.087778, 0.28967, 0.87777),
    RGB(0.088167, 0.29095, 0.88168),
    RGB(0.088557, 0.29224, 0.88557),
    RGB(0.088947, 0.29352, 0.88947),
    RGB(0.089338, 0.29481, 0.89338),
    RGB(0.08973, 0.29611, 0.8973),
    RGB(0.090121, 0.29741, 0.90121),
    RGB(0.090513, 0.29869, 0.90514),
    RGB(0.090904, 0.29999, 0.90904),
    RGB(0.091296, 0.30128, 0.91296),
    RGB(0.09169, 0.30257, 0.91688),
    RGB(0.092085, 0.30387, 0.92081),
    RGB(0.092476, 0.30517, 0.92477),
    RGB(0.092866, 0.30647, 0.92868),
    RGB(0.093261, 0.30776, 0.93261),
    RGB(0.093659, 0.30908, 0.93659),
    RGB(0.094052, 0.31037, 0.94052),
    RGB(0.094445, 0.31167, 0.94445),
    RGB(0.094842, 0.31297, 0.9484),
    RGB(0.095238, 0.31428, 0.95235),
    RGB(0.095633, 0.31559, 0.95632),
    RGB(0.096025, 0.31689, 0.96026),
    RGB(0.096419, 0.31819, 0.96422),
    RGB(0.096817, 0.3195, 0.96819),
    RGB(0.097216, 0.32082, 0.97216),
    RGB(0.097613, 0.32212, 0.97613),
    RGB(0.098012, 0.32343, 0.9801),
    RGB(0.098407, 0.32474, 0.98406),
    RGB(0.098802, 0.32605, 0.98803),
    RGB(0.099201, 0.32737, 0.99202),
    RGB(0.099601, 0.32868, 0.99601),
    RGB(0.1, 0.33, 1),
], 64), :colorcet)

register_gradient_colors(:kdc, sample_evenly([
    RGB(0, 0.0024382, 0.30687),
    RGB(0, 0.0044692, 0.31437),
    RGB(0, 0.0062324, 0.32191),
    RGB(0, 0.0077305, 0.32951),
    RGB(0, 0.008958, 0.33713),
    RGB(0, 0.0098968, 0.34479),
    RGB(0, 0.010555, 0.35249),
    RGB(0, 0.011009, 0.36023),
    RGB(0, 0.01114, 0.36802),
    RGB(0.0018829, 0.010944, 0.37585),
    RGB(0.0043414, 0.010697, 0.38371),
    RGB(0.0068536, 0.010463, 0.39161),
    RGB(0.0094655, 0.010231, 0.39952),
    RGB(0.01235, 0.0099983, 0.4075),
    RGB(0.015052, 0.0097591, 0.4155),
    RGB(0.017851, 0.0094983, 0.42354),
    RGB(0.020695, 0.0092222, 0.43163),
    RGB(0.02357, 0.0089375, 0.43973),
    RGB(0.026496, 0.0086445, 0.44787),
    RGB(0.029448, 0.0083501, 0.45605),
    RGB(0.032396, 0.0080591, 0.46429),
    RGB(0.03558, 0.0077658, 0.47253),
    RGB(0.038524, 0.0074701, 0.48082),
    RGB(0.041458, 0.0071848, 0.48915),
    RGB(0.044141, 0.0069073, 0.49753),
    RGB(0.04679, 0.0066377, 0.50593),
    RGB(0.04932, 0.0063792, 0.51438),
    RGB(0.051527, 0.0061442, 0.52287),
    RGB(0.053656, 0.0059329, 0.53139),
    RGB(0.055683, 0.0057462, 0.53995),
    RGB(0.057455, 0.0055887, 0.54857),
    RGB(0.059195, 0.0054661, 0.55722),
    RGB(0.060593, 0.0053876, 0.5659),
    RGB(0.061766, 0.0053629, 0.57464),
    RGB(0.062841, 0.0053961, 0.58343),
    RGB(0.063532, 0.0054935, 0.59227),
    RGB(0.063966, 0.0056647, 0.60114),
    RGB(0.0641, 0.0059201, 0.61007),
    RGB(0.063882, 0.0062716, 0.61907),
    RGB(0.063281, 0.0067326, 0.6281),
    RGB(0.062148, 0.0073175, 0.63719),
    RGB(0.060493, 0.0080408, 0.64634),
    RGB(0.058092, 0.008929, 0.65557),
    RGB(0.055233, 0.0099623, 0.66482),
    RGB(0.052105, 0.011266, 0.67402),
    RGB(0.049146, 0.012683, 0.68314),
    RGB(0.046014, 0.014144, 0.69216),
    RGB(0.04309, 0.015741, 0.70108),
    RGB(0.040435, 0.017485, 0.70992),
    RGB(0.037863, 0.019379, 0.71866),
    RGB(0.035616, 0.021429, 0.72731),
    RGB(0.033428, 0.02364, 0.73587),
    RGB(0.031841, 0.026021, 0.74433),
    RGB(0.030635, 0.028579, 0.75268),
    RGB(0.029823, 0.031319, 0.76095),
    RGB(0.029422, 0.034249, 0.7691),
    RGB(0.029449, 0.037557, 0.77717),
    RGB(0.029926, 0.040864, 0.78513),
    RGB(0.030874, 0.044198, 0.793),
    RGB(0.032312, 0.047578, 0.80076),
    RGB(0.034281, 0.051036, 0.80842),
    RGB(0.036977, 0.054512, 0.81597),
    RGB(0.040055, 0.058003, 0.82341),
    RGB(0.043483, 0.061561, 0.83076),
    RGB(0.047434, 0.065191, 0.83799),
    RGB(0.051627, 0.068868, 0.84513),
    RGB(0.056188, 0.072421, 0.85216),
    RGB(0.060871, 0.076069, 0.85907),
    RGB(0.065858, 0.079772, 0.86589),
    RGB(0.071059, 0.083524, 0.87259),
    RGB(0.07632, 0.087319, 0.87918),
    RGB(0.081824, 0.091117, 0.88564),
    RGB(0.087161, 0.095093, 0.89195),
    RGB(0.092292, 0.099225, 0.89805),
    RGB(0.097256, 0.10365, 0.90395),
    RGB(0.10208, 0.10819, 0.90965),
    RGB(0.10678, 0.11304, 0.91514),
    RGB(0.11126, 0.11798, 0.92041),
    RGB(0.11561, 0.12306, 0.92547),
    RGB(0.11981, 0.12837, 0.93032),
    RGB(0.12389, 0.13378, 0.93496),
    RGB(0.12789, 0.13928, 0.9394),
    RGB(0.13172, 0.14498, 0.94362),
    RGB(0.13541, 0.15071, 0.94764),
    RGB(0.13898, 0.15659, 0.95143),
    RGB(0.14245, 0.16255, 0.95501),
    RGB(0.14579, 0.16859, 0.95837),
    RGB(0.14895, 0.17474, 0.96151),
    RGB(0.15202, 0.18091, 0.96444),
    RGB(0.15497, 0.18721, 0.96717),
    RGB(0.15778, 0.19355, 0.96967),
    RGB(0.16044, 0.19992, 0.97196),
    RGB(0.16301, 0.20643, 0.97403),
    RGB(0.16537, 0.21292, 0.97587),
    RGB(0.16765, 0.21951, 0.9775),
    RGB(0.16978, 0.22614, 0.9789),
    RGB(0.17171, 0.23278, 0.9801),
    RGB(0.17352, 0.2395, 0.98107),
    RGB(0.17518, 0.24623, 0.98183),
    RGB(0.17664, 0.25301, 0.98238),
    RGB(0.17803, 0.25977, 0.98279),
    RGB(0.17924, 0.26645, 0.98317),
    RGB(0.18037, 0.27304, 0.98356),
    RGB(0.18141, 0.27957, 0.98394),
    RGB(0.18236, 0.28598, 0.98432),
    RGB(0.18323, 0.29237, 0.98469),
    RGB(0.18401, 0.29868, 0.98507),
    RGB(0.1847, 0.30493, 0.98544),
    RGB(0.1853, 0.31112, 0.9858),
    RGB(0.1858, 0.31725, 0.98617),
    RGB(0.18619, 0.32334, 0.98654),
    RGB(0.18649, 0.32939, 0.9869),
    RGB(0.18671, 0.33539, 0.98726),
    RGB(0.18684, 0.34133, 0.98762),
    RGB(0.18688, 0.34725, 0.98797),
    RGB(0.18682, 0.35312, 0.98832),
    RGB(0.18667, 0.35896, 0.98868),
    RGB(0.18643, 0.36477, 0.98903),
    RGB(0.1861, 0.37054, 0.98937),
    RGB(0.18568, 0.37631, 0.98972),
    RGB(0.18513, 0.38201, 0.99006),
    RGB(0.18448, 0.38771, 0.9904),
    RGB(0.18373, 0.39338, 0.99074),
    RGB(0.18287, 0.39902, 0.99107),
    RGB(0.18192, 0.40464, 0.9914),
    RGB(0.18086, 0.41025, 0.99173),
    RGB(0.17969, 0.41582, 0.99206),
    RGB(0.17843, 0.42137, 0.99239),
    RGB(0.17708, 0.42691, 0.99271),
    RGB(0.17576, 0.43242, 0.99301),
    RGB(0.17462, 0.43788, 0.9933),
    RGB(0.17355, 0.44331, 0.99356),
    RGB(0.17263, 0.44871, 0.99381),
    RGB(0.17185, 0.45406, 0.99403),
    RGB(0.17122, 0.4594, 0.99423),
    RGB(0.17072, 0.4647, 0.99442),
    RGB(0.17037, 0.46998, 0.99459),
    RGB(0.17015, 0.47522, 0.99473),
    RGB(0.17008, 0.48043, 0.99486),
    RGB(0.17016, 0.48562, 0.99497),
    RGB(0.17038, 0.4908, 0.99505),
    RGB(0.17077, 0.49593, 0.99512),
    RGB(0.17131, 0.50106, 0.99517),
    RGB(0.17201, 0.50615, 0.99519),
    RGB(0.17286, 0.51122, 0.9952),
    RGB(0.17386, 0.51627, 0.99519),
    RGB(0.17503, 0.52131, 0.99516),
    RGB(0.17629, 0.52633, 0.9951),
    RGB(0.17778, 0.53132, 0.99503),
    RGB(0.17936, 0.5363, 0.99494),
    RGB(0.1811, 0.54125, 0.99482),
    RGB(0.18299, 0.5462, 0.99469),
    RGB(0.18504, 0.55111, 0.99454),
    RGB(0.1872, 0.55601, 0.99436),
    RGB(0.18948, 0.5609, 0.99417),
    RGB(0.19189, 0.56577, 0.99396),
    RGB(0.19443, 0.57063, 0.99373),
    RGB(0.19686, 0.5755, 0.99349),
    RGB(0.19906, 0.58036, 0.99326),
    RGB(0.2011, 0.58524, 0.99303),
    RGB(0.20297, 0.59011, 0.99281),
    RGB(0.20464, 0.59499, 0.9926),
    RGB(0.20612, 0.59989, 0.99239),
    RGB(0.2074, 0.60479, 0.99218),
    RGB(0.2085, 0.60969, 0.99198),
    RGB(0.20942, 0.6146, 0.99179),
    RGB(0.21016, 0.61953, 0.9916),
    RGB(0.21072, 0.62445, 0.99142),
    RGB(0.21111, 0.62938, 0.99124),
    RGB(0.21132, 0.63432, 0.99107),
    RGB(0.21135, 0.63926, 0.9909),
    RGB(0.2112, 0.64421, 0.99074),
    RGB(0.21086, 0.64918, 0.99058),
    RGB(0.21033, 0.65414, 0.99043),
    RGB(0.20961, 0.65911, 0.99029),
    RGB(0.2087, 0.66409, 0.99015),
    RGB(0.2076, 0.66908, 0.99002),
    RGB(0.20631, 0.67406, 0.98989),
    RGB(0.20478, 0.67906, 0.98977),
    RGB(0.20305, 0.68406, 0.98965),
    RGB(0.20108, 0.68908, 0.98954),
    RGB(0.1989, 0.69409, 0.98943),
    RGB(0.19651, 0.69911, 0.98933),
    RGB(0.19382, 0.70414, 0.98924),
    RGB(0.19088, 0.70918, 0.98914),
    RGB(0.18788, 0.71421, 0.98905),
    RGB(0.18488, 0.71923, 0.98895),
    RGB(0.18198, 0.72423, 0.98883),
    RGB(0.17926, 0.72923, 0.98871),
    RGB(0.17665, 0.73421, 0.98857),
    RGB(0.17423, 0.73918, 0.98842),
    RGB(0.17193, 0.74412, 0.98825),
    RGB(0.16983, 0.74906, 0.98808),
    RGB(0.16785, 0.75399, 0.98789),
    RGB(0.16608, 0.7589, 0.9877),
    RGB(0.16452, 0.76381, 0.98749),
    RGB(0.16316, 0.76869, 0.98727),
    RGB(0.16202, 0.77357, 0.98703),
    RGB(0.1611, 0.77844, 0.98679),
    RGB(0.16037, 0.7833, 0.98653),
    RGB(0.15991, 0.78814, 0.98626),
    RGB(0.1597, 0.79298, 0.98597),
    RGB(0.15972, 0.7978, 0.98568),
    RGB(0.15999, 0.80261, 0.98537),
    RGB(0.16053, 0.80742, 0.98505),
    RGB(0.16137, 0.81221, 0.98472),
    RGB(0.16241, 0.81699, 0.98438),
    RGB(0.16373, 0.82176, 0.98402),
    RGB(0.16523, 0.82652, 0.98365),
    RGB(0.16707, 0.83127, 0.98327),
    RGB(0.1691, 0.83601, 0.98287),
    RGB(0.17134, 0.84074, 0.98247),
    RGB(0.17387, 0.84546, 0.98205),
    RGB(0.17729, 0.85015, 0.98162),
    RGB(0.18258, 0.85474, 0.98119),
    RGB(0.19003, 0.85923, 0.98076),
    RGB(0.19916, 0.86363, 0.98033),
    RGB(0.20965, 0.86794, 0.97991),
    RGB(0.22117, 0.87217, 0.97948),
    RGB(0.23338, 0.87632, 0.97905),
    RGB(0.24622, 0.88041, 0.97862),
    RGB(0.25953, 0.88443, 0.9782),
    RGB(0.27309, 0.8884, 0.97777),
    RGB(0.28681, 0.89231, 0.97734),
    RGB(0.30063, 0.89617, 0.97691),
    RGB(0.31448, 0.89998, 0.97648),
    RGB(0.32832, 0.90375, 0.97605),
    RGB(0.34224, 0.90747, 0.97562),
    RGB(0.35613, 0.91115, 0.97518),
    RGB(0.36991, 0.91479, 0.97475),
    RGB(0.38361, 0.9184, 0.97431),
    RGB(0.39728, 0.92197, 0.97387),
    RGB(0.4109, 0.9255, 0.97343),
    RGB(0.42439, 0.92899, 0.973),
    RGB(0.43779, 0.93247, 0.97255),
    RGB(0.45116, 0.9359, 0.97211),
    RGB(0.46443, 0.93931, 0.97166),
    RGB(0.47755, 0.94269, 0.97121),
    RGB(0.49069, 0.94603, 0.97076),
    RGB(0.5037, 0.94935, 0.97031),
    RGB(0.51659, 0.95265, 0.96986),
    RGB(0.52949, 0.95592, 0.9694),
    RGB(0.54227, 0.95916, 0.96894),
    RGB(0.55496, 0.96238, 0.96849),
    RGB(0.56763, 0.96557, 0.96803),
    RGB(0.58018, 0.96874, 0.96756),
    RGB(0.59271, 0.97189, 0.9671),
    RGB(0.60515, 0.97501, 0.96663),
    RGB(0.61751, 0.97812, 0.96616),
    RGB(0.62987, 0.98119, 0.96569),
    RGB(0.64213, 0.98425, 0.96521),
    RGB(0.65436, 0.98729, 0.96474),
    RGB(0.66654, 0.9903, 0.96426),
    RGB(0.67864, 0.9933, 0.96378),
    RGB(0.69072, 0.99626, 0.9633),
    RGB(0.70271, 0.99922, 0.96282),
], 64), :colorcet)

register_gradient_colors(:kg, sample_evenly([
    RGB(0, 0, 0),
    RGB(0, 0.0035927, 0),
    RGB(0, 0.0071431, 1.452e-17),
    RGB(2.0473e-17, 0.010757, 3.0748e-17),
    RGB(8.1864e-21, 0.014524, 2.5379e-17),
    RGB(1.7446e-17, 0.018105, 6.1007e-18),
    RGB(4.169e-17, 0.021687, 5.0758e-17),
    RGB(0, 0.025284, 2.5867e-17),
    RGB(6.0593e-17, 0.028821, 1.8546e-17),
    RGB(0, 0.032444, 2.5867e-17),
    RGB(4.253e-17, 0.036221, 5.8567e-18),
    RGB(0, 0.039766, 1.269e-17),
    RGB(2.4692e-17, 0.043161, 2.6355e-17),
    RGB(1.4341e-16, 0.046597, 3.7093e-17),
    RGB(0, 0.049768, 1.9522e-17),
    RGB(5.3227e-17, 0.052749, 4.0997e-17),
    RGB(1.6012e-18, 0.055759, 0),
    RGB(0, 0.058542, 7.1257e-17),
    RGB(5.6429e-17, 0.061269, 3.1236e-17),
    RGB(6.2098e-17, 0.063951, 4.783e-17),
    RGB(1.3454e-16, 0.066548, 3.026e-17),
    RGB(1.454e-17, 0.069095, 2.3427e-17),
    RGB(0, 0.071498, 4.6854e-17),
    RGB(3.2058e-17, 0.07387, 3.9045e-18),
    RGB(1.6029e-16, 0.076086, 1.9522e-17),
    RGB(1.1606e-16, 0.07832, 5.271e-17),
    RGB(6.2194e-17, 0.080566, 1.3666e-17),
    RGB(0, 0.082735, 0),
    RGB(0, 0.084825, 0),
    RGB(0, 0.086923, 0),
    RGB(8.7753e-18, 0.088913, 4.0997e-17),
    RGB(4.5733e-17, 0.090908, 0),
    RGB(5.8543e-17, 0.092798, 0),
    RGB(7.9487e-17, 0.094766, 0),
    RGB(0, 0.096572, 0),
    RGB(0, 0.098465, 1.9522e-18),
    RGB(0, 0.10025, 0),
    RGB(4.9576e-17, 0.10204, 0),
    RGB(1.1817e-16, 0.10382, 0),
    RGB(1.1049e-16, 0.10552, 1.9522e-18),
    RGB(0, 0.10725, 0),
    RGB(0, 0.10892, 0),
    RGB(8.1348e-18, 0.11059, 4.2949e-17),
    RGB(1.5174e-16, 0.11222, 1.1713e-17),
    RGB(4.2384e-06, 0.11381, 5.6236e-07),
    RGB(1.619e-05, 0.11539, 2.1481e-06),
    RGB(1.6699e-05, 0.11698, 2.2156e-06),
    RGB(1.2756e-05, 0.11863, 1.6925e-06),
    RGB(9.7295e-06, 0.12018, 1.2909e-06),
    RGB(1.3177e-05, 0.12176, 1.7484e-06),
    RGB(1.6418e-05, 0.12338, 2.1783e-06),
    RGB(1.7338e-05, 0.12502, 2.3004e-06),
    RGB(1.6062e-05, 0.12662, 2.1312e-06),
    RGB(1.1099e-05, 0.12826, 1.4726e-06),
    RGB(8.2989e-06, 0.1299, 1.1011e-06),
    RGB(1.4157e-05, 0.1315, 1.8783e-06),
    RGB(1.7475e-05, 0.13312, 2.3186e-06),
    RGB(1.7885e-05, 0.13477, 2.373e-06),
    RGB(1.5761e-05, 0.13635, 2.0912e-06),
    RGB(1.1631e-05, 0.13803, 1.5432e-06),
    RGB(8.4045e-06, 0.13962, 1.1151e-06),
    RGB(1.4146e-05, 0.1413, 1.8769e-06),
    RGB(1.7579e-05, 0.14293, 2.3324e-06),
    RGB(1.8299e-05, 0.14458, 2.428e-06),
    RGB(1.7087e-05, 0.14621, 2.2671e-06),
    RGB(1.2461e-05, 0.14787, 1.6533e-06),
    RGB(9.2002e-06, 0.14954, 1.2207e-06),
    RGB(1.3439e-05, 0.15116, 1.7831e-06),
    RGB(1.7166e-05, 0.15281, 2.2777e-06),
    RGB(1.8547e-05, 0.15448, 2.4608e-06),
    RGB(1.8043e-05, 0.15618, 2.394e-06),
    RGB(1.5436e-05, 0.15782, 2.048e-06),
    RGB(1.1288e-05, 0.15947, 1.4977e-06),
    RGB(9.1088e-06, 0.16118, 1.2086e-06),
    RGB(1.463e-05, 0.16284, 1.9412e-06),
    RGB(1.7571e-05, 0.16452, 2.3725e-06),
    RGB(9.5709e-06, 0.16618, 2.3585e-06),
    RGB(0, 0.16786, 2.12e-06),
    RGB(0, 0.16957, 1.7933e-06),
    RGB(0, 0.17123, 1.2872e-06),
    RGB(0, 0.17292, 1.0023e-06),
    RGB(0, 0.17462, 1.66e-06),
    RGB(0, 0.17629, 2.0398e-06),
    RGB(0, 0.17804, 2.1855e-06),
    RGB(0, 0.1797, 2.2541e-06),
    RGB(0, 0.18139, 1.9666e-06),
    RGB(0, 0.18309, 1.524e-06),
    RGB(0, 0.18482, 1.1233e-06),
    RGB(0, 0.18653, 1.2478e-06),
    RGB(0, 0.18826, 1.8149e-06),
    RGB(0, 0.18994, 2.1666e-06),
    RGB(0, 0.19165, 2.2543e-06),
    RGB(0, 0.19339, 2.1978e-06),
    RGB(0, 0.1951, 2.0405e-06),
    RGB(0, 0.19684, 1.6279e-06),
    RGB(0, 0.19854, 1.1674e-06),
    RGB(0, 0.20025, 1.2082e-06),
    RGB(0, 0.20199, 1.6696e-06),
    RGB(0, 0.20375, 2.0125e-06),
    RGB(0, 0.20547, 2.2769e-06),
    RGB(0, 0.20722, 2.3292e-06),
    RGB(0, 0.20894, 2.1993e-06),
    RGB(0, 0.21069, 1.9215e-06),
    RGB(0, 0.21244, 1.5648e-06),
    RGB(0, 0.21419, 1.1031e-06),
    RGB(0, 0.21594, 1.1824e-06),
    RGB(0, 0.21768, 1.6796e-06),
    RGB(0, 0.21944, 2.0449e-06),
    RGB(0, 0.2212, 2.2667e-06),
    RGB(0, 0.22296, 2.3344e-06),
    RGB(0, 0.22468, 2.2953e-06),
    RGB(0, 0.22648, 2.1282e-06),
    RGB(0, 0.22824, 1.8455e-06),
    RGB(0, 0.22999, 1.3868e-06),
    RGB(0, 0.23177, 1.0492e-06),
    RGB(0, 0.23352, 1.2152e-06),
    RGB(0, 0.23533, 1.6192e-06),
    RGB(0, 0.2371, 2.0168e-06),
    RGB(0, 0.23885, 2.2741e-06),
    RGB(0, 0.24062, 2.3737e-06),
    RGB(0, 0.24241, 2.3904e-06),
    RGB(0, 0.24419, 2.2583e-06),
    RGB(0, 0.24598, 2.0443e-06),
    RGB(0, 0.24779, 1.7786e-06),
    RGB(0, 0.24956, 1.4126e-06),
    RGB(0, 0.25137, 1.0243e-06),
    RGB(0, 0.25316, 1.0702e-06),
    RGB(0, 0.25496, 1.5288e-06),
    RGB(0, 0.25675, 1.8855e-06),
    RGB(0, 0.25854, 2.1333e-06),
    RGB(0, 0.26035, 2.3139e-06),
    RGB(0, 0.26215, 2.3948e-06),
    RGB(0, 0.26397, 2.4069e-06),
    RGB(0, 0.26577, 2.301e-06),
    RGB(0, 0.26756, 2.1598e-06),
    RGB(0, 0.26941, 1.9587e-06),
    RGB(0, 0.2712, 1.6921e-06),
    RGB(0, 0.27302, 1.2675e-06),
    RGB(0, 0.27484, 9.345e-07),
    RGB(0, 0.27667, 1.0391e-06),
    RGB(0, 0.27848, 1.4548e-06),
    RGB(0, 0.2803, 1.7503e-06),
    RGB(0, 0.28214, 1.9921e-06),
    RGB(0, 0.28396, 2.2429e-06),
    RGB(0, 0.28578, 2.3368e-06),
    RGB(0, 0.28761, 2.387e-06),
    RGB(0, 0.28946, 2.4145e-06),
    RGB(0, 0.2913, 2.3634e-06),
    RGB(0, 0.29313, 2.3021e-06),
    RGB(0, 0.29497, 2.1385e-06),
    RGB(0, 0.29682, 1.9682e-06),
    RGB(0, 0.29866, 1.7236e-06),
    RGB(0, 0.3005, 1.4728e-06),
    RGB(0, 0.30234, 1.137e-06),
    RGB(0, 0.30421, 8.5235e-07),
    RGB(0, 0.30606, 9.2407e-07),
    RGB(0, 0.30791, 1.2303e-06),
    RGB(0, 0.30977, 1.5259e-06),
    RGB(0, 0.31161, 1.7664e-06),
    RGB(0, 0.31349, 1.8547e-06),
    RGB(0, 0.31534, 8.3145e-07),
    RGB(6.8048e-16, 0.31721, 9.3707e-17),
    RGB(3.4536e-16, 0.31907, 3.1236e-17),
    RGB(3.3512e-16, 0.32095, 6.2472e-17),
    RGB(1.0248e-17, 0.32282, 0),
    RGB(0, 0.32467, 6.2472e-17),
    RGB(0, 0.32654, 1.0933e-16),
    RGB(6.7536e-16, 0.32843, 1.0933e-16),
    RGB(7.4709e-16, 0.3303, 0),
    RGB(3.3512e-16, 0.33219, 6.2472e-17),
    RGB(6.9585e-16, 0.33407, 4.6854e-17),
    RGB(1.6756e-16, 0.33594, 3.1236e-17),
    RGB(8.4804e-16, 0.33782, 1.2494e-16),
    RGB(1.7781e-16, 0.33972, 0),
    RGB(0, 0.3416, 6.2472e-17),
    RGB(0, 0.34348, 0),
    RGB(7.2147e-16, 0.34538, 0),
    RGB(0, 0.34727, 0),
    RGB(0, 0.34917, 0),
    RGB(1.5731e-16, 0.35106, 6.2472e-17),
    RGB(6.4974e-16, 0.35296, 1.8741e-16),
    RGB(3.8636e-16, 0.35487, 0),
    RGB(2.0855e-16, 0.35676, 0),
    RGB(0, 0.35865, 0),
    RGB(3.1462e-16, 0.36055, 1.2494e-16),
    RGB(4.4119e-16, 0.36247, 2.8112e-16),
    RGB(5.1292e-16, 0.36437, 6.2472e-17),
    RGB(0, 0.3663, 0),
    RGB(6.8048e-16, 0.3682, 9.3707e-17),
    RGB(7.0098e-16, 0.3701, 3.1236e-17),
    RGB(2.9412e-16, 0.37202, 1.8741e-16),
    RGB(5.0268e-16, 0.37395, 9.3707e-17),
    RGB(0, 0.37586, 3.1236e-17),
    RGB(6.7023e-16, 0.37778, 1.2494e-16),
    RGB(0, 0.3797, 3.1236e-17),
    RGB(6.7023e-16, 0.38163, 1.2494e-16),
    RGB(8.5829e-16, 0.38356, 9.3707e-17),
    RGB(5.2317e-16, 0.38547, 3.1236e-17),
    RGB(1.0566e-15, 0.3874, 3.1236e-17),
    RGB(4.9243e-16, 0.38934, 1.2494e-16),
    RGB(0, 0.39128, 6.2472e-17),
    RGB(3.5561e-16, 0.3932, 0),
    RGB(1.0607e-16, 0.39514, 2.1865e-16),
    RGB(0, 0.39707, 9.3707e-17),
    RGB(2.0855e-16, 0.39901, 0),
    RGB(1.2037e-15, 0.40097, 1.2494e-16),
    RGB(9.951e-16, 0.4029, 2.1865e-16),
    RGB(1.1934e-15, 0.40484, 1.5618e-16),
    RGB(0, 0.40679, 1.2494e-16),
    RGB(0, 0.40874, 1.2494e-16),
    RGB(0, 0.41069, 0),
    RGB(1.3507e-15, 0.41264, 2.1865e-16),
    RGB(1.0258e-15, 0.41458, 1.2494e-16),
    RGB(3.1462e-16, 0.41654, 1.2494e-16),
    RGB(1.3815e-15, 0.41849, 1.2494e-16),
    RGB(6.9073e-16, 0.42045, 6.2472e-17),
    RGB(7.0098e-16, 0.4224, 3.1236e-17),
    RGB(6.0875e-16, 0.42437, 3.1236e-16),
    RGB(3.4536e-16, 0.42633, 3.1236e-17),
    RGB(9.3361e-16, 0.4283, 4.0607e-16),
    RGB(7.0098e-16, 0.43026, 3.1236e-17),
    RGB(1.3507e-15, 0.43223, 2.1865e-16),
    RGB(1.0258e-15, 0.43419, 1.2494e-16),
    RGB(1.3712e-15, 0.43617, 1.5618e-16),
    RGB(5.4726e-16, 0.43814, 4.9977e-16),
    RGB(7.1123e-16, 0.44011, 0),
    RGB(1.7063e-15, 0.44209, 2.1865e-16),
    RGB(6.3949e-16, 0.44406, 2.1865e-16),
    RGB(3.4536e-16, 0.44603, 3.1236e-17),
    RGB(6.1488e-17, 0.44801, 0),
    RGB(4.4784e-16, 0.45, 0),
    RGB(1.0566e-15, 0.45199, 3.1236e-17),
    RGB(1.0463e-15, 0.45396, 6.2472e-17),
    RGB(6.7023e-16, 0.45594, 1.2494e-16),
    RGB(1.0668e-15, 0.45793, 0),
    RGB(9.951e-16, 0.45992, 2.1865e-16),
    RGB(7.4197e-16, 0.46191, 0),
    RGB(1.1181e-15, 0.46391, 0),
    RGB(9.6436e-16, 0.46589, 3.1236e-16),
    RGB(1.2585e-15, 0.46789, 4.9977e-16),
    RGB(1.3815e-15, 0.46989, 1.2494e-16),
    RGB(6.7023e-16, 0.47189, 1.2494e-16),
    RGB(3.5561e-16, 0.47388, 0),
    RGB(2.0722e-15, 0.47589, 1.8741e-16),
    RGB(1.1078e-15, 0.47788, 0),
    RGB(1.6346e-15, 0.4799, 4.373e-16),
    RGB(6.2924e-16, 0.4819, 2.4989e-16),
    RGB(1.6756e-15, 0.48389, 3.1236e-16),
    RGB(1.402e-15, 0.48591, 6.2472e-17),
    RGB(1.0668e-15, 0.48793, 0),
    RGB(0, 0.48992, 0),
    RGB(0, 0.49195, 2.4989e-16),
    RGB(6.7023e-16, 0.49395, 1.2494e-16),
    RGB(1.4429e-15, 0.49597, 0),
    RGB(2.7363e-16, 0.498, 2.4989e-16),
    RGB(7.1123e-16, 0.5, 0),
], 64), :colorcet)

register_gradient_colors(:kgy, sample_evenly([
    RGB(0.0020082, 0.082527, 0.022201),
    RGB(0.004381, 0.08615, 0.022118),
    RGB(0.0067598, 0.089747, 0.022041),
    RGB(0.0091625, 0.093124, 0.021981),
    RGB(0.011768, 0.096433, 0.021933),
    RGB(0.014187, 0.099686, 0.021895),
    RGB(0.016629, 0.10283, 0.021877),
    RGB(0.019082, 0.10587, 0.021867),
    RGB(0.021556, 0.1088, 0.021877),
    RGB(0.024018, 0.11172, 0.021897),
    RGB(0.026293, 0.11459, 0.021902),
    RGB(0.028361, 0.1176, 0.0219),
    RGB(0.030209, 0.12061, 0.021879),
    RGB(0.031836, 0.12368, 0.021843),
    RGB(0.033248, 0.12681, 0.021797),
    RGB(0.03448, 0.13002, 0.021732),
    RGB(0.035611, 0.13318, 0.021656),
    RGB(0.036308, 0.13639, 0.021568),
    RGB(0.036803, 0.13965, 0.021464),
    RGB(0.037067, 0.14299, 0.021348),
    RGB(0.037096, 0.14631, 0.021222),
    RGB(0.036881, 0.14971, 0.021083),
    RGB(0.036566, 0.15305, 0.020931),
    RGB(0.036258, 0.15648, 0.020778),
    RGB(0.035956, 0.15982, 0.02062),
    RGB(0.035648, 0.16326, 0.020454),
    RGB(0.03531, 0.16666, 0.020281),
    RGB(0.034935, 0.17007, 0.02011),
    RGB(0.034549, 0.17347, 0.019938),
    RGB(0.034194, 0.17689, 0.019764),
    RGB(0.0339, 0.18031, 0.01959),
    RGB(0.033658, 0.18374, 0.019418),
    RGB(0.03346, 0.18719, 0.019251),
    RGB(0.033308, 0.1906, 0.019094),
    RGB(0.033202, 0.19407, 0.018947),
    RGB(0.033153, 0.19748, 0.018811),
    RGB(0.033171, 0.2009, 0.018691),
    RGB(0.033269, 0.20438, 0.018588),
    RGB(0.033456, 0.2078, 0.018509),
    RGB(0.033755, 0.21125, 0.018457),
    RGB(0.034229, 0.21467, 0.018437),
    RGB(0.03498, 0.21811, 0.018456),
    RGB(0.03581, 0.22154, 0.018521),
    RGB(0.036701, 0.22495, 0.018622),
    RGB(0.037696, 0.22842, 0.018735),
    RGB(0.038702, 0.23186, 0.018848),
    RGB(0.039729, 0.23531, 0.018957),
    RGB(0.040766, 0.23875, 0.019061),
    RGB(0.041844, 0.24222, 0.019159),
    RGB(0.042758, 0.24568, 0.019252),
    RGB(0.043802, 0.24918, 0.019339),
    RGB(0.044931, 0.25267, 0.019419),
    RGB(0.045873, 0.25616, 0.019493),
    RGB(0.047009, 0.25968, 0.019561),
    RGB(0.047989, 0.26319, 0.019623),
    RGB(0.049157, 0.2667, 0.019676),
    RGB(0.050138, 0.27025, 0.019721),
    RGB(0.051173, 0.27378, 0.019758),
    RGB(0.052215, 0.27732, 0.019785),
    RGB(0.053276, 0.28085, 0.019802),
    RGB(0.054355, 0.28442, 0.01981),
    RGB(0.055446, 0.28799, 0.01981),
    RGB(0.056569, 0.29158, 0.019809),
    RGB(0.057528, 0.29515, 0.019834),
    RGB(0.058624, 0.29874, 0.01989),
    RGB(0.059734, 0.30233, 0.019977),
    RGB(0.06068, 0.30596, 0.020098),
    RGB(0.061651, 0.30957, 0.020253),
    RGB(0.062756, 0.31318, 0.020445),
    RGB(0.063696, 0.31681, 0.020677),
    RGB(0.064656, 0.32045, 0.02095),
    RGB(0.065612, 0.32408, 0.021258),
    RGB(0.066576, 0.32773, 0.021584),
    RGB(0.067549, 0.33138, 0.021916),
    RGB(0.068538, 0.33506, 0.022251),
    RGB(0.06952, 0.33872, 0.022589),
    RGB(0.070402, 0.3424, 0.022929),
    RGB(0.071419, 0.34607, 0.023272),
    RGB(0.072319, 0.34977, 0.023618),
    RGB(0.073361, 0.35346, 0.023966),
    RGB(0.074283, 0.35718, 0.024318),
    RGB(0.075218, 0.36087, 0.024672),
    RGB(0.076165, 0.36459, 0.025028),
    RGB(0.077123, 0.36832, 0.025388),
    RGB(0.078091, 0.37204, 0.02575),
    RGB(0.079071, 0.37578, 0.026116),
    RGB(0.080061, 0.37952, 0.026484),
    RGB(0.081061, 0.38328, 0.026854),
    RGB(0.082077, 0.38702, 0.027228),
    RGB(0.082984, 0.39079, 0.027604),
    RGB(0.084013, 0.39456, 0.027983),
    RGB(0.084952, 0.39834, 0.028365),
    RGB(0.085878, 0.40211, 0.02875),
    RGB(0.086941, 0.40591, 0.029138),
    RGB(0.087908, 0.4097, 0.029528),
    RGB(0.088876, 0.4135, 0.029921),
    RGB(0.089858, 0.41731, 0.030317),
    RGB(0.090847, 0.42111, 0.030716),
    RGB(0.091852, 0.42494, 0.031118),
    RGB(0.092761, 0.42876, 0.031521),
    RGB(0.093773, 0.43259, 0.031927),
    RGB(0.094809, 0.43643, 0.032341),
    RGB(0.09575, 0.44027, 0.03276),
    RGB(0.096692, 0.44412, 0.033171),
    RGB(0.097753, 0.44796, 0.033567),
    RGB(0.098721, 0.45183, 0.033985),
    RGB(0.099698, 0.4557, 0.034483),
    RGB(0.10069, 0.45957, 0.035028),
    RGB(0.10168, 0.46344, 0.035514),
    RGB(0.10269, 0.46733, 0.035934),
    RGB(0.1037, 0.47122, 0.036349),
    RGB(0.10463, 0.47512, 0.036789),
    RGB(0.10568, 0.47902, 0.037237),
    RGB(0.10671, 0.48292, 0.037682),
    RGB(0.10766, 0.48683, 0.038128),
    RGB(0.10865, 0.49076, 0.038578),
    RGB(0.10971, 0.49468, 0.039032),
    RGB(0.11069, 0.49861, 0.039489),
    RGB(0.11169, 0.50254, 0.039948),
    RGB(0.1127, 0.50648, 0.040406),
    RGB(0.11369, 0.51042, 0.040871),
    RGB(0.11464, 0.51438, 0.041351),
    RGB(0.11569, 0.51834, 0.041826),
    RGB(0.1167, 0.52229, 0.042253),
    RGB(0.11769, 0.52627, 0.042639),
    RGB(0.11873, 0.53024, 0.043044),
    RGB(0.1197, 0.53421, 0.043511),
    RGB(0.1207, 0.53821, 0.044017),
    RGB(0.1217, 0.54219, 0.044525),
    RGB(0.12271, 0.54619, 0.044992),
    RGB(0.12373, 0.55018, 0.045398),
    RGB(0.12476, 0.55419, 0.045806),
    RGB(0.12581, 0.55819, 0.046288),
    RGB(0.12679, 0.56222, 0.046801),
    RGB(0.12783, 0.56624, 0.047247),
    RGB(0.12882, 0.57026, 0.047653),
    RGB(0.12988, 0.57429, 0.048118),
    RGB(0.13089, 0.57833, 0.048645),
    RGB(0.1319, 0.58237, 0.049135),
    RGB(0.13292, 0.58642, 0.049563),
    RGB(0.13395, 0.59047, 0.04998),
    RGB(0.13498, 0.59453, 0.050418),
    RGB(0.13595, 0.59859, 0.050866),
    RGB(0.13701, 0.60266, 0.051311),
    RGB(0.13806, 0.60673, 0.051757),
    RGB(0.13904, 0.61081, 0.052205),
    RGB(0.14007, 0.61488, 0.052658),
    RGB(0.14114, 0.61898, 0.053112),
    RGB(0.14214, 0.62307, 0.053569),
    RGB(0.14318, 0.62716, 0.054029),
    RGB(0.14421, 0.63127, 0.054491),
    RGB(0.14526, 0.63537, 0.054953),
    RGB(0.14626, 0.63949, 0.055418),
    RGB(0.1473, 0.6436, 0.055896),
    RGB(0.14831, 0.64772, 0.056378),
    RGB(0.14938, 0.65185, 0.056824),
    RGB(0.15041, 0.65599, 0.057227),
    RGB(0.15143, 0.66012, 0.057637),
    RGB(0.15246, 0.66426, 0.058099),
    RGB(0.15349, 0.66841, 0.058598),
    RGB(0.15454, 0.67256, 0.0591),
    RGB(0.1556, 0.67671, 0.059581),
    RGB(0.15665, 0.68086, 0.060024),
    RGB(0.15766, 0.68503, 0.06044),
    RGB(0.15873, 0.68921, 0.060845),
    RGB(0.15973, 0.69338, 0.061267),
    RGB(0.1608, 0.69755, 0.061737),
    RGB(0.16187, 0.70173, 0.06225),
    RGB(0.16291, 0.70593, 0.06274),
    RGB(0.16396, 0.71012, 0.063178),
    RGB(0.16497, 0.71431, 0.063603),
    RGB(0.16602, 0.71852, 0.064042),
    RGB(0.1671, 0.72272, 0.064491),
    RGB(0.16812, 0.72693, 0.064939),
    RGB(0.16921, 0.73115, 0.065387),
    RGB(0.17024, 0.73537, 0.065837),
    RGB(0.17128, 0.7396, 0.066291),
    RGB(0.17233, 0.74382, 0.066748),
    RGB(0.17339, 0.74806, 0.067206),
    RGB(0.17446, 0.75229, 0.067663),
    RGB(0.1755, 0.75654, 0.068124),
    RGB(0.17654, 0.76078, 0.068597),
    RGB(0.17764, 0.76504, 0.069073),
    RGB(0.17869, 0.76929, 0.069516),
    RGB(0.17973, 0.77355, 0.06992),
    RGB(0.18078, 0.77782, 0.070337),
    RGB(0.18184, 0.78209, 0.070809),
    RGB(0.1829, 0.78636, 0.071291),
    RGB(0.18397, 0.79063, 0.071723),
    RGB(0.18506, 0.79491, 0.072134),
    RGB(0.18612, 0.7992, 0.07259),
    RGB(0.18718, 0.80349, 0.073087),
    RGB(0.18826, 0.80779, 0.073557),
    RGB(0.1893, 0.81208, 0.073983),
    RGB(0.19036, 0.81639, 0.074402),
    RGB(0.19143, 0.82069, 0.074835),
    RGB(0.1925, 0.825, 0.075276),
    RGB(0.19359, 0.82933, 0.075716),
    RGB(0.19467, 0.83365, 0.076155),
    RGB(0.19571, 0.83797, 0.076597),
    RGB(0.19681, 0.8423, 0.077042),
    RGB(0.19786, 0.84663, 0.077489),
    RGB(0.19892, 0.85096, 0.077938),
    RGB(0.19999, 0.85531, 0.078388),
    RGB(0.20106, 0.85965, 0.078841),
    RGB(0.20215, 0.864, 0.079296),
    RGB(0.20324, 0.86836, 0.079753),
    RGB(0.20434, 0.87271, 0.080211),
    RGB(0.20539, 0.87707, 0.080669),
    RGB(0.2065, 0.88144, 0.081135),
    RGB(0.20756, 0.88581, 0.08161),
    RGB(0.20863, 0.89017, 0.082069),
    RGB(0.20974, 0.89456, 0.082489),
    RGB(0.21167, 0.8989, 0.082885),
    RGB(0.21577, 0.90314, 0.083267),
    RGB(0.22243, 0.90724, 0.083619),
    RGB(0.23129, 0.91122, 0.083917),
    RGB(0.24192, 0.91509, 0.084156),
    RGB(0.25398, 0.91886, 0.084342),
    RGB(0.26714, 0.92253, 0.084483),
    RGB(0.28122, 0.92611, 0.084587),
    RGB(0.29605, 0.92959, 0.084656),
    RGB(0.31138, 0.93299, 0.084696),
    RGB(0.32707, 0.93632, 0.08471),
    RGB(0.34303, 0.93956, 0.084701),
    RGB(0.35913, 0.94274, 0.084672),
    RGB(0.37535, 0.94584, 0.084623),
    RGB(0.39181, 0.94887, 0.084553),
    RGB(0.40832, 0.95183, 0.084465),
    RGB(0.42483, 0.95473, 0.084363),
    RGB(0.4413, 0.95756, 0.084247),
    RGB(0.45785, 0.96033, 0.084113),
    RGB(0.47443, 0.96303, 0.083964),
    RGB(0.49093, 0.96567, 0.083803),
    RGB(0.50737, 0.96826, 0.083635),
    RGB(0.52388, 0.97077, 0.083456),
    RGB(0.54033, 0.97323, 0.083278),
    RGB(0.55668, 0.97564, 0.083106),
    RGB(0.57311, 0.97798, 0.082937),
    RGB(0.58945, 0.98026, 0.082777),
    RGB(0.60571, 0.98249, 0.082624),
    RGB(0.62205, 0.98465, 0.082472),
    RGB(0.63831, 0.98675, 0.082325),
    RGB(0.6545, 0.9888, 0.08218),
    RGB(0.67074, 0.99078, 0.082035),
    RGB(0.68689, 0.99272, 0.081896),
    RGB(0.70305, 0.99458, 0.081762),
    RGB(0.71919, 0.99639, 0.081638),
    RGB(0.73525, 0.99815, 0.081527),
    RGB(0.75139, 0.99984, 0.081428),
    RGB(0.76742, 1, 0.081347),
    RGB(0.78349, 1, 0.081282),
    RGB(0.79956, 1, 0.081236),
    RGB(0.81555, 1, 0.08121),
    RGB(0.83159, 1, 0.081204),
    RGB(0.84754, 1, 0.081223),
], 64), :colorcet)

register_gradient_colors(:kr, sample_evenly([
    RGB(0, 0, 0),
    RGB(0.0080248, 0.0015152, 4.5084e-17),
    RGB(0.016166, 0.0030536, 0),
    RGB(0.024126, 0.0045572, 6.0397e-18),
    RGB(0.032164, 0.0060809, 1.6594e-17),
    RGB(0.040345, 0.0076161, 0),
    RGB(0.047917, 0.0090568, 0),
    RGB(0.055209, 0.010404, 3.9777e-17),
    RGB(0.06236, 0.011803, 0),
    RGB(0.068888, 0.012988, 0),
    RGB(0.074917, 0.014153, 0),
    RGB(0.080792, 0.015256, 5.8811e-17),
    RGB(0.086386, 0.016319, 8.7851e-18),
    RGB(0.091832, 0.017341, 0),
    RGB(0.096947, 0.018317, 0),
    RGB(0.10199, 0.019262, 2.1475e-17),
    RGB(0.10688, 0.020182, 0),
    RGB(0.11156, 0.021071, 4.2461e-17),
    RGB(0.11612, 0.021929, 0),
    RGB(0.12051, 0.022761, 0),
    RGB(0.12482, 0.023572, 0),
    RGB(0.12901, 0.024369, 0),
    RGB(0.13312, 0.025144, 0),
    RGB(0.13712, 0.025899, 2.9284e-17),
    RGB(0.14104, 0.026637, 0),
    RGB(0.14484, 0.027362, 0),
    RGB(0.14852, 0.028076, 0),
    RGB(0.15218, 0.028765, 0),
    RGB(0.15579, 0.029444, 0),
    RGB(0.15929, 0.03011, 0),
    RGB(0.16274, 0.03076, 0),
    RGB(0.16612, 0.031401, 0),
    RGB(0.16947, 0.032031, 0),
    RGB(0.17271, 0.032655, 0),
    RGB(0.1759, 0.033257, 0),
    RGB(0.17909, 0.033824, 0),
    RGB(0.18223, 0.034436, 0),
    RGB(0.18542, 0.035067, 0),
    RGB(0.18847, 0.03563, 0),
    RGB(0.19142, 0.03617, 0),
    RGB(0.19437, 0.036729, 0),
    RGB(0.19725, 0.037267, 5.4019e-07),
    RGB(0.20012, 0.037802, 1.2837e-06),
    RGB(0.20303, 0.038349, 9.9959e-07),
    RGB(0.20594, 0.038898, 7.7892e-07),
    RGB(0.20884, 0.039449, 9.7112e-07),
    RGB(0.21176, 0.039999, 1.2788e-06),
    RGB(0.21466, 0.040546, 1.373e-06),
    RGB(0.21761, 0.0411, 1.2556e-06),
    RGB(0.22057, 0.041669, 9.5959e-07),
    RGB(0.22346, 0.042219, 8.1372e-07),
    RGB(0.22635, 0.042741, 1.1485e-06),
    RGB(0.22925, 0.043284, 1.3628e-06),
    RGB(0.23223, 0.04386, 1.3699e-06),
    RGB(0.23522, 0.044439, 1.2685e-06),
    RGB(0.23815, 0.045002, 1.0271e-06),
    RGB(0.24106, 0.045522, 7.9582e-07),
    RGB(0.24401, 0.046076, 1.0449e-06),
    RGB(0.24701, 0.046672, 1.3237e-06),
    RGB(0.24995, 0.047232, 1.4871e-06),
    RGB(0.25293, 0.047749, 1.4007e-06),
    RGB(0.25591, 0.048339, 1.1191e-06),
    RGB(0.25894, 0.048928, 8.5433e-07),
    RGB(0.26191, 0.049479, 9.2045e-07),
    RGB(0.26486, 0.050025, 1.3084e-06),
    RGB(0.26783, 0.05059, 1.4958e-06),
    RGB(0.27084, 0.051156, 1.5067e-06),
    RGB(0.27383, 0.051721, 1.3409e-06),
    RGB(0.27682, 0.052289, 1.0257e-06),
    RGB(0.27983, 0.052858, 7.8803e-07),
    RGB(0.28284, 0.053424, 1.0814e-06),
    RGB(0.28584, 0.053993, 1.3794e-06),
    RGB(0.28888, 0.054565, 1.5209e-06),
    RGB(0.2919, 0.055134, 1.522e-06),
    RGB(0.29494, 0.055708, 1.3561e-06),
    RGB(0.29798, 0.056296, 1.0594e-06),
    RGB(0.30101, 0.056866, 8.5564e-07),
    RGB(0.30401, 0.057414, 1.0969e-06),
    RGB(0.30705, 0.057986, 1.3643e-06),
    RGB(0.31013, 0.05858, 1.5001e-06),
    RGB(0.3132, 0.05917, 1.5634e-06),
    RGB(0.31627, 0.059754, 1.4993e-06),
    RGB(0.31931, 0.06032, 1.2688e-06),
    RGB(0.32234, 0.060876, 9.3009e-07),
    RGB(0.32538, 0.061448, 8.4705e-07),
    RGB(0.32848, 0.062046, 1.1943e-06),
    RGB(0.33157, 0.06265, 1.4594e-06),
    RGB(0.33467, 0.06322, 1.6339e-06),
    RGB(0.33772, 0.063788, 1.6369e-06),
    RGB(0.3408, 0.064374, 1.4847e-06),
    RGB(0.34388, 0.064956, 1.2226e-06),
    RGB(0.34698, 0.065538, 8.9134e-07),
    RGB(0.35008, 0.066125, 8.5068e-07),
    RGB(0.35318, 0.066712, 1.2269e-06),
    RGB(0.35629, 0.067299, 1.4894e-06),
    RGB(0.35939, 0.067883, 1.6295e-06),
    RGB(0.36252, 0.068473, 1.6472e-06),
    RGB(0.36565, 0.069079, 1.5852e-06),
    RGB(0.36876, 0.069658, 1.4248e-06),
    RGB(0.37185, 0.070223, 1.0684e-06),
    RGB(0.37498, 0.070835, 7.9019e-07),
    RGB(0.37813, 0.071435, 1.022e-06),
    RGB(0.38125, 0.072005, 1.3647e-06),
    RGB(0.38438, 0.072592, 1.5517e-06),
    RGB(0.38754, 0.073217, 1.6548e-06),
    RGB(0.39069, 0.073807, 1.7253e-06),
    RGB(0.39382, 0.074384, 1.6463e-06),
    RGB(0.39695, 0.074981, 1.4452e-06),
    RGB(0.40011, 0.075576, 1.1513e-06),
    RGB(0.40327, 0.076172, 8.5042e-07),
    RGB(0.40643, 0.076769, 8.941e-07),
    RGB(0.40959, 0.077367, 1.2367e-06),
    RGB(0.41277, 0.077967, 1.4894e-06),
    RGB(0.41594, 0.078566, 1.6548e-06),
    RGB(0.41912, 0.079167, 1.728e-06),
    RGB(0.4223, 0.079769, 1.7184e-06),
    RGB(0.4255, 0.080371, 1.6249e-06),
    RGB(0.4287, 0.080974, 1.4674e-06),
    RGB(0.43192, 0.081588, 1.2356e-06),
    RGB(0.43512, 0.082195, 9.4259e-07),
    RGB(0.43828, 0.08278, 7.201e-07),
    RGB(0.4415, 0.083388, 1.052e-06),
    RGB(0.44472, 0.084012, 1.3338e-06),
    RGB(0.44791, 0.084617, 1.593e-06),
    RGB(0.45112, 0.085205, 1.7373e-06),
    RGB(0.45433, 0.085801, 1.7608e-06),
    RGB(0.45756, 0.086427, 1.7212e-06),
    RGB(0.4608, 0.087056, 1.6842e-06),
    RGB(0.46404, 0.087652, 1.5738e-06),
    RGB(0.46727, 0.088257, 1.3578e-06),
    RGB(0.47049, 0.088871, 1.1045e-06),
    RGB(0.47373, 0.089482, 8.1745e-07),
    RGB(0.47697, 0.090095, 7.8044e-07),
    RGB(0.48022, 0.090707, 1.0884e-06),
    RGB(0.48348, 0.091327, 1.3399e-06),
    RGB(0.48673, 0.091949, 1.5673e-06),
    RGB(0.48996, 0.092545, 1.7249e-06),
    RGB(0.49321, 0.093154, 1.7614e-06),
    RGB(0.49649, 0.093784, 1.7613e-06),
    RGB(0.49977, 0.094411, 1.763e-06),
    RGB(0.50305, 0.095031, 1.7236e-06),
    RGB(0.50631, 0.09564, 1.6147e-06),
    RGB(0.50957, 0.096244, 1.4163e-06),
    RGB(0.51285, 0.096865, 1.1666e-06),
    RGB(0.51615, 0.097503, 9.3008e-07),
    RGB(0.51945, 0.098123, 7.3324e-07),
    RGB(0.52274, 0.098737, 8.3616e-07),
    RGB(0.52603, 0.099359, 1.0957e-06),
    RGB(0.52932, 0.099983, 1.3165e-06),
    RGB(0.53262, 0.10061, 1.4935e-06),
    RGB(0.53592, 0.10123, 1.6285e-06),
    RGB(0.53923, 0.10185, 1.7225e-06),
    RGB(0.54255, 0.10248, 1.7716e-06),
    RGB(0.54588, 0.10311, 1.8035e-06),
    RGB(0.54919, 0.10374, 1.8308e-06),
    RGB(0.55249, 0.10435, 1.7782e-06),
    RGB(0.5558, 0.10498, 1.6557e-06),
    RGB(0.55915, 0.10562, 1.5548e-06),
    RGB(0.56251, 0.10626, 1.4434e-06),
    RGB(0.56583, 0.10688, 1.3031e-06),
    RGB(0.56915, 0.10751, 1.1028e-06),
    RGB(0.57249, 0.10813, 8.5642e-07),
    RGB(0.57584, 0.10877, 6.5276e-07),
    RGB(0.57921, 0.10941, 6.6729e-07),
    RGB(0.58255, 0.11004, 8.9887e-07),
    RGB(0.58591, 0.11067, 1.1025e-06),
    RGB(0.58925, 0.1113, 1.264e-06),
    RGB(0.59262, 0.11194, 1.3991e-06),
    RGB(0.59599, 0.11257, 1.5204e-06),
    RGB(0.59936, 0.11322, 1.6369e-06),
    RGB(0.60271, 0.11385, 1.7384e-06),
    RGB(0.60606, 0.11447, 1.7667e-06),
    RGB(0.60945, 0.11512, 1.7698e-06),
    RGB(0.61284, 0.11576, 1.7921e-06),
    RGB(0.61623, 0.11641, 1.8189e-06),
    RGB(0.6196, 0.11703, 1.7927e-06),
    RGB(0.62299, 0.11767, 1.7298e-06),
    RGB(0.62639, 0.11833, 1.7048e-06),
    RGB(0.62978, 0.11896, 1.6692e-06),
    RGB(0.63317, 0.1196, 1.5768e-06),
    RGB(0.63657, 0.12024, 1.4791e-06),
    RGB(0.63997, 0.12088, 1.3801e-06),
    RGB(0.64337, 0.12153, 1.2686e-06),
    RGB(0.64679, 0.12217, 1.1466e-06),
    RGB(0.65019, 0.12281, 1.0261e-06),
    RGB(0.65362, 0.12346, 8.8816e-07),
    RGB(0.65704, 0.12411, 7.6247e-07),
    RGB(0.66046, 0.12475, 6.252e-07),
    RGB(0.6639, 0.1254, 5.0813e-07),
    RGB(0.66734, 0.12605, 5.4766e-07),
    RGB(0.67075, 0.12669, 4.2573e-07),
    RGB(0.67419, 0.12734, 2.3855e-08),
    RGB(0.67764, 0.128, 0),
    RGB(0.68106, 0.12864, 0),
    RGB(0.68451, 0.12929, 0),
    RGB(0.68797, 0.12996, 0),
    RGB(0.69142, 0.13061, 0),
    RGB(0.69486, 0.13125, 0),
    RGB(0.69832, 0.1319, 0),
    RGB(0.70177, 0.13256, 0),
    RGB(0.70524, 0.13321, 0),
    RGB(0.70871, 0.13387, 0),
    RGB(0.71218, 0.13453, 0),
    RGB(0.71565, 0.13518, 0),
    RGB(0.7191, 0.13582, 0),
    RGB(0.72258, 0.13648, 0),
    RGB(0.72607, 0.13715, 0),
    RGB(0.72956, 0.13781, 0),
    RGB(0.73304, 0.13847, 0),
    RGB(0.73651, 0.13912, 0),
    RGB(0.74001, 0.13977, 0),
    RGB(0.74351, 0.14044, 0),
    RGB(0.74701, 0.14111, 0),
    RGB(0.75051, 0.14176, 0),
    RGB(0.75401, 0.14242, 0),
    RGB(0.75751, 0.14309, 0),
    RGB(0.76102, 0.14375, 0),
    RGB(0.76454, 0.14441, 0),
    RGB(0.76805, 0.14508, 0),
    RGB(0.77157, 0.14575, 0),
    RGB(0.77507, 0.1464, 0),
    RGB(0.7786, 0.14707, 0),
    RGB(0.78213, 0.14774, 0),
    RGB(0.78565, 0.14839, 0),
    RGB(0.78919, 0.14907, 0),
    RGB(0.79273, 0.14975, 0),
    RGB(0.79625, 0.1504, 0),
    RGB(0.7998, 0.15107, 0),
    RGB(0.80333, 0.15174, 0),
    RGB(0.80688, 0.15241, 0),
    RGB(0.81042, 0.15308, 0),
    RGB(0.81397, 0.15375, 0),
    RGB(0.81752, 0.15442, 0),
    RGB(0.82108, 0.15509, 0),
    RGB(0.82465, 0.15577, 0),
    RGB(0.82821, 0.15645, 0),
    RGB(0.83177, 0.15711, 0),
    RGB(0.83534, 0.15778, 0),
    RGB(0.83891, 0.15847, 0),
    RGB(0.84248, 0.15914, 0),
    RGB(0.84604, 0.1598, 0),
    RGB(0.84963, 0.16048, 0),
    RGB(0.85322, 0.16117, 0),
    RGB(0.8568, 0.16184, 0),
    RGB(0.86038, 0.16251, 0),
    RGB(0.86398, 0.16319, 0),
    RGB(0.86757, 0.16388, 0),
    RGB(0.87115, 0.16455, 0),
    RGB(0.87473, 0.16523, 0),
    RGB(0.87834, 0.16591, 0),
    RGB(0.88196, 0.16659, 0),
    RGB(0.88556, 0.16727, 0),
    RGB(0.88915, 0.16795, 0),
    RGB(0.89277, 0.16863, 0),
    RGB(0.89639, 0.16932, 0),
    RGB(0.9, 0.17, 2.0303e-16),
], 64), :colorcet)

register_gradient_colors(:rainbow, sample_evenly([
    RGB(0, 0.20755, 0.97632),
    RGB(0, 0.21857, 0.96476),
    RGB(0, 0.2291, 0.95322),
    RGB(0, 0.23923, 0.94169),
    RGB(0, 0.24899, 0.93018),
    RGB(0, 0.25842, 0.91868),
    RGB(0, 0.26756, 0.9072),
    RGB(0, 0.27649, 0.89573),
    RGB(0, 0.28513, 0.88428),
    RGB(0, 0.29358, 0.87284),
    RGB(0, 0.30184, 0.86141),
    RGB(0, 0.30994, 0.85),
    RGB(0, 0.31785, 0.83859),
    RGB(0, 0.3256, 0.82721),
    RGB(0, 0.33324, 0.81583),
    RGB(0, 0.34073, 0.80447),
    RGB(0, 0.3481, 0.79312),
    RGB(0, 0.35537, 0.78178),
    RGB(0, 0.3625, 0.77045),
    RGB(0, 0.36954, 0.75913),
    RGB(0, 0.37649, 0.74783),
    RGB(0, 0.38333, 0.73654),
    RGB(0, 0.39005, 0.72528),
    RGB(0, 0.39667, 0.71405),
    RGB(0, 0.40319, 0.70286),
    RGB(0, 0.40957, 0.69171),
    RGB(0, 0.4158, 0.68063),
    RGB(0, 0.42188, 0.66965),
    RGB(0, 0.4278, 0.65875),
    RGB(0, 0.43352, 0.64799),
    RGB(0, 0.43905, 0.63737),
    RGB(0, 0.44438, 0.62689),
    RGB(0, 0.4495, 0.61659),
    RGB(0, 0.45441, 0.60644),
    RGB(0, 0.45914, 0.59646),
    RGB(0.0019224, 0.46368, 0.58662),
    RGB(0.027932, 0.46808, 0.57693),
    RGB(0.054843, 0.47236, 0.56735),
    RGB(0.076598, 0.47653, 0.55785),
    RGB(0.095053, 0.48062, 0.54844),
    RGB(0.11106, 0.48465, 0.53907),
    RGB(0.12523, 0.48865, 0.52974),
    RGB(0.13795, 0.49262, 0.52042),
    RGB(0.14935, 0.49658, 0.5111),
    RGB(0.15962, 0.50055, 0.50179),
    RGB(0.169, 0.50452, 0.49245),
    RGB(0.17747, 0.50849, 0.48309),
    RGB(0.18517, 0.51246, 0.4737),
    RGB(0.19217, 0.51645, 0.46429),
    RGB(0.19856, 0.52046, 0.45483),
    RGB(0.20443, 0.52448, 0.44531),
    RGB(0.20974, 0.52851, 0.43577),
    RGB(0.21461, 0.53255, 0.42616),
    RGB(0.21905, 0.53661, 0.41651),
    RGB(0.22309, 0.54066, 0.40679),
    RGB(0.22674, 0.54474, 0.397),
    RGB(0.23002, 0.54883, 0.38713),
    RGB(0.233, 0.55292, 0.3772),
    RGB(0.23568, 0.55703, 0.36716),
    RGB(0.23802, 0.56114, 0.35704),
    RGB(0.24006, 0.56526, 0.34678),
    RGB(0.24185, 0.56939, 0.3364),
    RGB(0.24334, 0.57354, 0.32588),
    RGB(0.24458, 0.57769, 0.31523),
    RGB(0.24556, 0.58185, 0.30439),
    RGB(0.2463, 0.58603, 0.29336),
    RGB(0.2468, 0.59019, 0.28214),
    RGB(0.24707, 0.59438, 0.27067),
    RGB(0.24714, 0.59856, 0.25895),
    RGB(0.24704, 0.60275, 0.24696),
    RGB(0.24679, 0.60693, 0.23472),
    RGB(0.24648, 0.61109, 0.22215),
    RGB(0.24616, 0.61523, 0.20933),
    RGB(0.24597, 0.61936, 0.19628),
    RGB(0.24602, 0.62342, 0.18297),
    RGB(0.24648, 0.62742, 0.1696),
    RGB(0.24753, 0.63135, 0.15615),
    RGB(0.24931, 0.63518, 0.14276),
    RGB(0.25204, 0.63889, 0.12965),
    RGB(0.25579, 0.64249, 0.11693),
    RGB(0.2607, 0.64593, 0.10484),
    RGB(0.26674, 0.64925, 0.093668),
    RGB(0.2739, 0.65241, 0.083583),
    RGB(0.28205, 0.65544, 0.074764),
    RGB(0.29104, 0.65834, 0.067449),
    RGB(0.30071, 0.66112, 0.061598),
    RGB(0.31093, 0.66382, 0.057362),
    RGB(0.32147, 0.66641, 0.054542),
    RGB(0.33226, 0.66895, 0.052918),
    RGB(0.34314, 0.67142, 0.052293),
    RGB(0.35402, 0.67386, 0.052401),
    RGB(0.36487, 0.67627, 0.05303),
    RGB(0.37564, 0.67864, 0.054018),
    RGB(0.38629, 0.681, 0.055243),
    RGB(0.39683, 0.68335, 0.05664),
    RGB(0.40725, 0.68569, 0.057955),
    RGB(0.41755, 0.68801, 0.059542),
    RGB(0.42772, 0.69031, 0.060911),
    RGB(0.43777, 0.69262, 0.062454),
    RGB(0.4477, 0.69491, 0.063883),
    RGB(0.45755, 0.69719, 0.065334),
    RGB(0.46731, 0.69947, 0.066802),
    RGB(0.47698, 0.70173, 0.068291),
    RGB(0.48656, 0.70399, 0.069758),
    RGB(0.49607, 0.70625, 0.071211),
    RGB(0.50551, 0.70848, 0.072621),
    RGB(0.5149, 0.71071, 0.074107),
    RGB(0.52421, 0.71293, 0.07551),
    RGB(0.53346, 0.71514, 0.076938),
    RGB(0.54268, 0.71735, 0.078389),
    RGB(0.55183, 0.71954, 0.079862),
    RGB(0.56093, 0.72172, 0.08136),
    RGB(0.56998, 0.7239, 0.082779),
    RGB(0.57901, 0.72607, 0.084273),
    RGB(0.58797, 0.72822, 0.08563),
    RGB(0.59692, 0.73037, 0.08717),
    RGB(0.60581, 0.73251, 0.088583),
    RGB(0.61468, 0.73464, 0.09003),
    RGB(0.62353, 0.73676, 0.091506),
    RGB(0.63233, 0.73887, 0.092872),
    RGB(0.6411, 0.74097, 0.094388),
    RGB(0.64986, 0.74307, 0.095796),
    RGB(0.65858, 0.74515, 0.097234),
    RGB(0.66728, 0.74722, 0.098697),
    RGB(0.67595, 0.74928, 0.10013),
    RGB(0.6846, 0.75135, 0.10157),
    RGB(0.69324, 0.75339, 0.10305),
    RGB(0.70185, 0.75543, 0.10444),
    RGB(0.71045, 0.75746, 0.10594),
    RGB(0.71902, 0.75947, 0.10738),
    RGB(0.72758, 0.76149, 0.10881),
    RGB(0.73613, 0.76349, 0.1103),
    RGB(0.74466, 0.76548, 0.11173),
    RGB(0.75317, 0.76746, 0.1132),
    RGB(0.76167, 0.76943, 0.11457),
    RGB(0.77016, 0.7714, 0.11608),
    RGB(0.77864, 0.77335, 0.11749),
    RGB(0.78711, 0.7753, 0.11897),
    RGB(0.79556, 0.77724, 0.12038),
    RGB(0.80401, 0.77916, 0.12182),
    RGB(0.81244, 0.78108, 0.12327),
    RGB(0.82086, 0.78299, 0.12474),
    RGB(0.82929, 0.78489, 0.12623),
    RGB(0.83769, 0.78678, 0.12766),
    RGB(0.84609, 0.78866, 0.1291),
    RGB(0.8545, 0.79053, 0.1306),
    RGB(0.86289, 0.79238, 0.13203),
    RGB(0.87127, 0.7942, 0.13346),
    RGB(0.87964, 0.79598, 0.13491),
    RGB(0.88799, 0.79771, 0.13626),
    RGB(0.8963, 0.79937, 0.13769),
    RGB(0.90456, 0.80091, 0.13896),
    RGB(0.91273, 0.80229, 0.14021),
    RGB(0.92077, 0.80347, 0.14138),
    RGB(0.92863, 0.80438, 0.14238),
    RGB(0.93625, 0.80495, 0.14322),
    RGB(0.94355, 0.80511, 0.14385),
    RGB(0.95044, 0.80481, 0.14425),
    RGB(0.95686, 0.80399, 0.14437),
    RGB(0.96274, 0.80262, 0.14419),
    RGB(0.96803, 0.80067, 0.14372),
    RGB(0.9727, 0.79816, 0.14294),
    RGB(0.97674, 0.79512, 0.14188),
    RGB(0.9802, 0.79159, 0.14055),
    RGB(0.9831, 0.78764, 0.13895),
    RGB(0.98551, 0.78333, 0.13721),
    RGB(0.98751, 0.77872, 0.13526),
    RGB(0.98917, 0.77389, 0.13319),
    RGB(0.99056, 0.76889, 0.13103),
    RGB(0.99175, 0.76376, 0.12875),
    RGB(0.99279, 0.75855, 0.12647),
    RGB(0.99371, 0.75327, 0.1241),
    RGB(0.99455, 0.74796, 0.12173),
    RGB(0.99534, 0.74261, 0.11937),
    RGB(0.99608, 0.73724, 0.11697),
    RGB(0.99679, 0.73185, 0.11453),
    RGB(0.99748, 0.72646, 0.11217),
    RGB(0.99814, 0.72104, 0.10976),
    RGB(0.99879, 0.71563, 0.1073),
    RGB(0.99942, 0.71019, 0.1048),
    RGB(1, 0.70475, 0.10238),
    RGB(1, 0.69929, 0.099908),
    RGB(1, 0.69382, 0.09745),
    RGB(1, 0.68834, 0.095),
    RGB(1, 0.68284, 0.092452),
    RGB(1, 0.67734, 0.08996),
    RGB(1, 0.6718, 0.087465),
    RGB(1, 0.66626, 0.08489),
    RGB(1, 0.66071, 0.082364),
    RGB(1, 0.65514, 0.079729),
    RGB(1, 0.64955, 0.077118),
    RGB(1, 0.64394, 0.074554),
    RGB(1, 0.63832, 0.071927),
    RGB(1, 0.63268, 0.069347),
    RGB(1, 0.62702, 0.066593),
    RGB(1, 0.62135, 0.063895),
    RGB(1, 0.61565, 0.061104),
    RGB(1, 0.60993, 0.058355),
    RGB(1, 0.6042, 0.055584),
    RGB(1, 0.59843, 0.052708),
    RGB(1, 0.59265, 0.049893),
    RGB(1, 0.58684, 0.046988),
    RGB(1, 0.58101, 0.043966),
    RGB(1, 0.57515, 0.041014),
    RGB(1, 0.56926, 0.037943),
    RGB(1, 0.56336, 0.034887),
    RGB(1, 0.55742, 0.031822),
    RGB(1, 0.55145, 0.028972),
    RGB(1, 0.54546, 0.026194),
    RGB(1, 0.53942, 0.023487),
    RGB(1, 0.53336, 0.020851),
    RGB(1, 0.52727, 0.018287),
    RGB(1, 0.52114, 0.015792),
    RGB(1, 0.51497, 0.013362),
    RGB(1, 0.50878, 0.010828),
    RGB(1, 0.50252, 0.0085264),
    RGB(1, 0.49623, 0.0063082),
    RGB(1, 0.48991, 0.0041556),
    RGB(1, 0.48353, 0.0020694),
    RGB(1, 0.47711, 4.915e-05),
    RGB(1, 0.47065, 0),
    RGB(1, 0.46413, 0),
    RGB(1, 0.45754, 0),
    RGB(1, 0.45092, 0),
    RGB(1, 0.44423, 0),
    RGB(1, 0.43748, 0),
    RGB(1, 0.43065, 0),
    RGB(1, 0.42375, 0),
    RGB(1, 0.4168, 0),
    RGB(1, 0.40976, 0),
    RGB(1, 0.40263, 0),
    RGB(1, 0.39544, 0),
    RGB(1, 0.38813, 0),
    RGB(1, 0.38075, 0),
    RGB(1, 0.37324, 0),
    RGB(1, 0.36564, 0),
    RGB(1, 0.35792, 0),
    RGB(1, 0.35006, 0),
    RGB(1, 0.34208, 0),
    RGB(1, 0.33395, 0),
    RGB(1, 0.32564, 0),
    RGB(1, 0.31719, 0),
    RGB(1, 0.30856, 0),
    RGB(1, 0.29971, 0),
    RGB(1, 0.29063, 0),
    RGB(1, 0.28132, 0),
    RGB(1, 0.27173, 0),
    RGB(1, 0.26187, 0),
    RGB(1, 0.25167, 0),
    RGB(1, 0.24106, 0),
    RGB(1, 0.23001, 0),
    RGB(1, 0.21851, 0),
    RGB(1, 0.20642, 0),
    RGB(1, 0.19361, 0),
    RGB(1, 0.17996, 0),
    RGB(1, 0.16528, 0),
], 64), :colorcet)
